camlp4:没有可用的报价扩展器

Vic*_*let 4 ocaml camlp4

该文件test.ml只包含一行:

let foo = <:expr< foo >>
Run Code Online (Sandbox Code Playgroud)

然后我使用此命令行将camlp4应用于该文件:

camlp4o pa_extend.cmo test.ml
Run Code Online (Sandbox Code Playgroud)

输出是:

File "test.ml", line 1, characters 12-24:
While finding quotation "expr" in a position of "expr":
  There is no quotation expander available.
  Camlp4: Uncaught exception: Not_found
Run Code Online (Sandbox Code Playgroud)

我希望文件得到预处理,报价要适当扩展.我在这忘记了什么?

gas*_*che 6

使用ocaml> = 3.10,您不应该使用pa_extend.cmo新的引用模块.它们包含在camlp4of可以直接使用的可执行文件中,而不是camlp4(或camlp4rf用于修订语法).