aboutsummaryrefslogtreecommitdiff
path: root/iclean.icl
diff options
context:
space:
mode:
Diffstat (limited to 'iclean.icl')
-rw-r--r--iclean.icl9
1 files changed, 5 insertions, 4 deletions
diff --git a/iclean.icl b/iclean.icl
index a5ca38c..e17cb86 100644
--- a/iclean.icl
+++ b/iclean.icl
@@ -43,11 +43,12 @@ Start w
where
loop :: *World -> *World
loop w
- #! w = print "> " w
+ #! w = print "λ. " w
#! (s,w) = readline w
| s == "" = w
#! w = writemodule s w
- #! w = compile temp_path temp_module w
+ #! (r,w) = compile temp_path temp_module w
+ | r <> 0 = loop w
#! w = run (temp_path +++ temp_module) w
= loop w
@@ -81,9 +82,9 @@ writemodule s w
| not ok = abort ("Couldn't close " +++ temp_file +++ "\n")
| otherwise = w
-compile :: !String !String *World -> *World
+compile :: !String !String !*World -> !*(!Int,!*World)
compile _ _ _ = code {
- ccall compile "SS:V:p"
+ ccall compile "SS:p:p"
}
run :: !String *World -> *World