aboutsummaryrefslogtreecommitdiff
path: root/ocaml
diff options
context:
space:
mode:
Diffstat (limited to 'ocaml')
-rw-r--r--ocaml/step0_repl.ml23
1 files changed, 23 insertions, 0 deletions
diff --git a/ocaml/step0_repl.ml b/ocaml/step0_repl.ml
new file mode 100644
index 0000000..e3478f7
--- /dev/null
+++ b/ocaml/step0_repl.ml
@@ -0,0 +1,23 @@
+(*
+ To try things at the ocaml repl:
+ rlwrap ocaml
+
+ To see type signatures of all functions:
+ ocamlc -i step0_repl.ml
+
+ To run the program:
+ ocaml step0_repl.ml
+*)
+
+let read str = str
+let eval ast any = ast
+let print exp = exp
+let rep str = print (eval (read str) "")
+
+let rec main =
+ try
+ while true do
+ print_string "user> ";
+ print_endline (rep (read_line ()));
+ done
+ with End_of_file -> ()