Commit | Line | Data |
---|---|---|
1 | open Printf | |
2 | ||
3 | let () = | |
4 | let path_to_program_file = Sys.argv.(1) in | |
5 | let ic = open_in path_to_program_file in | |
6 | let lexbuf = Lexing.from_channel ic in | |
7 | let rec parse_and_print () = | |
8 | match Tiger.Lexer.token lexbuf with | |
9 | | None -> | |
10 | () | |
11 | | Some token -> | |
12 | printf "%s\n" (Tiger.Parser.Token.to_string token); | |
13 | parse_and_print () | |
14 | in | |
15 | parse_and_print (); | |
16 | close_in ic; |