4

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

let foo = <:expr< foo >>

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

camlp4o pa_extend.cmo test.ml

输出是:

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

我希望对文件进行预处理,并对报价进行适当扩展。我在这里忘记了什么?

4

1 回答 1

6

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

于 2011-03-16T12:49:47.940 回答