Ocaml utop和打印构造函数

Ocaml utop和打印构造函数,ocaml,utop,Ocaml,Utop,在utop(或dune utop)中加载代码,并使用#show Bin.Stop;#我撞车了 utop##show Bin.Stop;; >>致命错误:Ident.rename Bin.nat 致命错误:异常杂项致命错误 ~via在utop和非ocaml中发生的顶级指令致命错误是utop中的错误 实际上,utop部分地重新实现了OCaml REPL的驱动程序逻辑,并且可能会出现utop的代码与底层OCaml的编译器库稍微过时的情况 请在以下位置报告类似问题:事实上,这是utop中的一个bug,我

utop
(或
dune utop
)中加载代码,并使用
#show Bin.Stop;#我撞车了

utop##show Bin.Stop;;
>>致命错误:Ident.rename Bin.nat
致命错误:异常杂项致命错误

~via在
utop
和非
ocaml
中发生的顶级指令致命错误是
utop
中的错误

实际上,
utop
部分地重新实现了OCaml REPL的驱动程序逻辑,并且可能会出现utop的代码与底层OCaml的编译器库稍微过时的情况


请在以下位置报告类似问题:

事实上,这是utop中的一个bug,我可以用任何构造函数复制它(对于OCaml 4.12.0,utop 2.7.0),因此它与此代码无关<代码>#显示顺序为零
类型t=A#显示一个
是MWE。我希望编辑没有问题-它以某种方式进入了质量非常低的队列(尽管我可以看到这是一个实际的答案-我没有领域专业知识知道它是否准确,但这个问题应该通过投票来解决,而不是VLQ队列)。感谢编辑。我已经还原了一些模式限定符:由于utop的结构,如果某个REPL指令中出现错误,则该错误实际上无法在用户代码中找到。因此,在这种情况下,“可能”应该是“肯定”吗?我想这进一步证明了我对所讨论的技术不是特别熟悉。是的。这更像是REPL(也称为交互式解释器)的一般规则:如果在作为软件直接发送给REPL的指令上发生错误,则这是REPL作为软件的错误,而不是正在解释的代码中的错误。