1
1
mirror of https://github.com/kanaka/mal.git synced 2024-09-20 18:18:51 +03:00
mal/tcl/step0_repl.tcl
2015-11-09 22:15:15 -05:00

34 lines
448 B
Tcl

source mal_readline.tcl
proc READ str {
return $str
}
proc EVAL {ast env} {
return $ast
}
proc PRINT exp {
return $exp
}
proc REP str {
PRINT [EVAL [READ $str] {}]
}
fconfigure stdout -translation binary
# repl loop
while {true} {
set res [_readline "user> "]
if {[lindex $res 0] == "EOF"} {
break
}
set line [lindex $res 1]
if {$line == ""} {
continue
}
puts [REP $line]
}
puts ""