Ocaml 如何将reasonml rtop与src文件一起使用
如何允许rtop发现我的src文件目录 我找到了一个选项Ocaml 如何将reasonml rtop与src文件一起使用,ocaml,read-eval-print-loop,reason,toplevel,utop,Ocaml,Read Eval Print Loop,Reason,Toplevel,Utop,如何允许rtop发现我的src文件目录 我找到了一个选项-I,希望rtop-I src能够在rtop中加载我的src文件,但它仍然无法找到它们 例如。 src/lib.re: let foo = 1; 运行命令: rtop-I src Reason # open Lib; Error: Unbound module Lib open是一种对文件系统一无所知的语言功能。您必须使用一个特殊指令来从文件加载模块 utop/rtop主要使用与ocamltoplevel相同的指令,这些指令记录在oca
-I
,希望rtop-I src
能够在rtop中加载我的src文件,但它仍然无法找到它们
例如。
src/lib.re:
let foo = 1;
运行命令:
rtop-I src
Reason # open Lib;
Error: Unbound module Lib
open
是一种对文件系统一无所知的语言功能。您必须使用一个特殊指令来从文件加载模块
utop
/rtop
主要使用与ocaml
toplevel相同的指令,这些指令记录在ocaml手册中
如果模块已编译,您可以使用\load
指令加载.cmo
或.cma
:
#load "filename";;
#use "filename";;
如果该模块依赖于其他模块,则可以使用#load_rec
递归加载它们
如果您的代码尚未编译,并且由于立即打开它,您也可以使用#use
指令:
#load "filename";;
#use "filename";;
或者,如果您想将其作为顶级模块加载,请使用#mod#u use
。注意:问题也是出于感谢而提出的,不知道哪一个是正式的提问渠道。我应该把它们联系在一起(就像你所做的那样),至少我是偶然发现的,但是我找不到一种简单的方法来一次加载所有东西,比如“沙丘乌托普”。不过,dune中有一个针对rtop的pull请求,所以这可能是最好的方式。我只是想知道,如果没有dune或esy,是否有人支持类似的东西。也许我可以编写一个脚本,创建一个自动包含所有src模块的init文件