我正在将基于OCaml的几个模块转换为F#,并且遇到报价扩展器的OCaml''Quotation.add''编译器指令。
引用扩展器是用OCaml编写的函数。打电话给 Camlp4库函数''Quotation.add''添加引号 膨胀器。
在F#书籍,F#网站,Google和这里搜索报价扩展器和''Quotation.add''编译器指令之后,我得到的答案是否定的。
有人可以确认F#不支持OCaml''Quotation.add''编译器指令的概念或OCaml报价扩展器的概念。
修改
注意:我刚刚了解到Camlp4是OCaml的预处理器 - 漂亮打印机,当我提出问题时,我认为它是OCaml的独立库。现在它是有道理的。
答案 0 :(得分:10)
你是对的 - camlp4库不适用于F#,所以我担心你需要使用另一种方法来重新实现F#中所需的功能。
一般情况下,您可以使用F#中的一些相关技术(但如果不了解具体问题,很难判断它们是否对您有用):