Compiler errors 属性';显式';没有使用
我正在尝试使用Jane Street的核心标准库和Reason语言前端进行编程 因此,我使用Compiler errors 属性';显式';没有使用,compiler-errors,ocamlbuild,reason,Compiler Errors,Ocamlbuild,Reason,我正在尝试使用Jane Street的核心标准库和Reason语言前端进行编程 因此,我使用corebuild脚本,通过将ocamlbuild替换为rebuild将副本保存为recorebuild。但是我在一些简单的代码上遇到了麻烦 这是失败的最小示例: type t = Foo int | Bar; let foobar f => switch f { | Foo x => x | Bar => 0 }; 如果您尝试使用以下选项编译它,则是由corebuild添加的众多选
corebuild
脚本,通过将ocamlbuild
替换为rebuild
将副本保存为recorebuild
。但是我在一些简单的代码上遇到了麻烦
这是失败的最小示例:
type t = Foo int | Bar;
let foobar f => switch f {
| Foo x => x
| Bar => 0
};
如果您尝试使用以下选项编译它,则是由corebuild
添加的众多选项之一:
rebuild -tag "ppx(ppx-jane -as-ppx)" test.byte
然后您会得到以下错误:
File "", line 0:
Attribute `explicit_arity' was not used
Command exited with code 2.
这是什么意思?
显式性是由refmt
发出的一个属性,用于解决OCaml语法中关于变量的歧义。不幸的是,它与Jane St ppx冲突,但是如果从corebuild
脚本中删除-tag“ppx(ppx-Jane-as ppx)”
,它应该可以工作
(注意:此信息来源于Reason Discord,我个人对此没有任何经验)你能链接到提到它的地方吗?谷歌一点也没有,恐怕我没有任何链接。但是,如果你跳到原因不一致(不需要注册),你可以搜索它。事实上,我认为这是引入它的问题。不过有很多讨论:我也对使用简·斯特里特的《理性》核心感兴趣。你知道有一个文档/教程/博客解释如何做到这一点吗?