{ }
rule translate = parse
| "current_directory" { print_string (Sys.getcwd ()) }
| _ as c { print_char c }
| eof { exit 0 }
{
let main () =
let lexbuf = Lexing.from_channel stdin in
while true do
translate lexbuf
done
let _ = Printexc.print main ()
}
Может кто-нибудь объяснить мне, как работает основная функция? Я понял часть регулярного выражения и могу понять основную функцию, но не точное значение.