我看过一些源代码,其中有 。 let rec parse_document = parser | [< len = parse_int32; st; >] -> parse_list [] (ES.take_int32 len st) | [&l...
我不知道如何一般性地完成这件事,但是我会就一个特定的实例询问以便更清楚: Sexplib对我来说很有趣。我想玩一下它。我已经下载并安装好了(我非常确定)。我想在toplevel中使用“with sexp”语法扩展。我该如何做到这一点?我找到的所有例子都假定你已经知道如何制作toplevel和...
最近,在OCaml官方的github上宣布用ppx重写器和扩展点(https://github.com/ocaml/camlp4)替换了Camlp4: Camlp4是官方OCaml发行版的一部分,直到其版本4.01.0。自那时以来,它已被一个更简单的系统所取代,这个系统更易于维护和学习:p...
一年多前,{{link1:Lexifi的Alain Frisch提出了一个替代camlp4的建议,用于编写使用OCaml 4.00中添加的-ppx标志的语法扩展。当时他提到还有一些工作要做(属性、引用等),但已经可以使用了。OCaml 4.01是否对这种编写语法扩展的方式提供了改进支持?是否有...
当人们提到OCaml中的“修订语法”时,他们是指这将成为该语言的新语法,还是仅仅是CamlP4中创建的替代语法?如果是前者,则“修订语法”何时成为OCaml的“官方语法”? 当人们提到OCaml中的“修订语法”时,通常是指一个名为Revised Syntax的独立语法。这个语法在OCaml ...