У меня есть тривиальный лексер, взятый из учебника (http://plus.kaist.ac.kr/~shoh/ocaml/ocamllex-ocamlyacc/ocamllex-tutorial/sec-ocamllex-some-simple-examples.html)Как использовать лексер порожденную ocamllex
{ }
rule translate = parse
| "c" { print_string (Sys.getcwd()); translate lexbuf }
| _ as c { print_char c; translate lexbuf }
| eof { exit 0 }
После создания лексера OCaml и создания исполняемого файла,
ocamllex testlexer.mll && ocamlc -o testlexer testlexer.ml
я пытаю передать содержимое через stdin echo c | ./testlexer
и через файл ./testlexer input
, но не работает.
Я также не вижу никакой логики в сгенерированном testlexer.ml
для чтения из файла stdin или файла, означает ли он быть включенным в качестве модуля в другую программу или использован другим инструментом генерации кода, например ocamlyacc?