13

我正在寻找一个好的 ocaml 解析库,它不是 flex/bison 的衍生物。理想情况下,我想要一个类似于秒差距的单子组合库,但我找不到任何东西。

我会使用haskell,但是为haskell 进行llvm 绑定证明比我最初想象的更烦人。

干杯,

杜安

4

2 回答 2

11

这是一个图书馆,通过谷歌。(这也提出了thisthis,其中列出了几个听起来更相关的库。)

当我在 ML 中编写组合器解析器时,由于值限制和急切求值,它使用起来相当麻烦,这迫使您对语法规则进行 eta 扩展。不过,据说 Ocaml 对价值限制更加放松——也许你会免于一些痛苦。

于 2008-11-21T06:12:12.470 回答
3

在 OCaml 世界中,基于流的解析器Camlp4是接下来两个最常见的替代方案。两者都在之前的OCaml Journal文章中进行了详细描述。

在 OCaml 中,Monadic 解析器组合器相对较少,主要是因为有几个更高级别且效率更高的库可用。

于 2008-12-21T15:06:55.683 回答