X-Git-Url: https://git.xandkar.net/?a=blobdiff_plain;f=tiger%2Fsrc%2Fexe%2Ftigerc.ml;fp=tiger%2Fsrc%2Fexe%2Ftigerc.ml;h=77eafb42647b7111b188309e2dc4b28abbbd649c;hb=78c9eca51ebc5150d79f84e255a57bb9df9f82fc;hp=0000000000000000000000000000000000000000;hpb=1c975d0844f1b642646212180f34216af1ca8328;p=tiger.ml.git diff --git a/tiger/src/exe/tigerc.ml b/tiger/src/exe/tigerc.ml new file mode 100644 index 0000000..77eafb4 --- /dev/null +++ b/tiger/src/exe/tigerc.ml @@ -0,0 +1,15 @@ +open Printf + +let () = + let path_to_program_file = Sys.argv.(1) in + let ic = open_in path_to_program_file in + let lexbuf = Lexing.from_channel ic in + let rec parse_and_print () = + let token = Tiger.Lexer.token lexbuf in + printf "%s\n" (Tiger.Parser.Token.to_string token); + match token with + | Tiger.Parser.Token.EOF -> () + | _ -> parse_and_print () + in + parse_and_print (); + close_in ic;