let printUsage () = print_endline "Usage: jlox [script]"; exit 64 let () = let argc = Array.length Sys.argv in match argc - 1 with | 0 -> Lox.runRepl () | 1 -> ( let path = Sys.argv.(1) in (* Printf.printf "Running script %s\n" path; *) let ic = open_in path in let source = In_channel.input_all ic in match Lox.run source with | Error e -> Lox.Error.print_error e; exit 1 | Ok () -> exit 0) | _ -> printUsage ()