构建使用列表理解的OCaml代码

构建使用列表理解的OCaml代码,ocaml,list-comprehension,ocaml-batteries,Ocaml,List Comprehension,Ocaml Batteries,从这个问题:,我可以用opam install pa_comprehension安装理解包,并在顶级REPL中使用该包 # #require "pa_comprehension";; # open Batteries;; # [? 2 * x | x <- 0 -- max_int ; x * x > 3 ?];; - : int Batteries.Enum.t = <abstr> 那么,我如何编译代码呢 不幸的是,由于pa_理解包名称没有以.syntax扩展名结尾,

从这个问题:,我可以用opam install pa_comprehension安装理解包,并在顶级REPL中使用该包

# #require "pa_comprehension";;
# open Batteries;;
# [? 2 * x | x <- 0 -- max_int ; x * x > 3 ?];;
- : int Batteries.Enum.t = <abstr>
那么,我如何编译代码呢

不幸的是,由于pa_理解包名称没有以.syntax扩展名结尾,这比它应该的要难一些。这个问题仍然没有解决,这表明在现代OCaml中,使用pa_理解并不是很流行。因此,如果没有适当的扩展,我们需要手动执行所有操作。如果文件名为pr.ml,则正确的调用为:

$ ocamlbuild -use-ocamlfind -syntax camlp4o -pkg camlp4,pa_comprehension pr.native
如果不想每次都键入它,则可以创建_标记文件,其中包含以下内容:

$ cat _tags
<**/*> : package(camlp4),syntax(camlp4o),package(pa_comprehension)
不幸的是,由于pa_理解包名称没有以.syntax扩展名结尾,所以这比它应该的要难一些。这个问题仍然没有解决,这表明在现代OCaml中,使用pa_理解并不是很流行。因此,如果没有适当的扩展,我们需要手动执行所有操作。如果文件名为pr.ml,则正确的调用为:

$ ocamlbuild -use-ocamlfind -syntax camlp4o -pkg camlp4,pa_comprehension pr.native
如果不想每次都键入它,则可以创建_标记文件,其中包含以下内容:

$ cat _tags
<**/*> : package(camlp4),syntax(camlp4o),package(pa_comprehension)
电池呢?电池作为pa_理解的依赖项包括在内。电池呢?电池作为pa_理解的依赖项包括在内