Tool to write extensible parsers in OCaml