我想进行命令#use" a.ml"条件执行即,在" if语句"中,如下所示...
let funs = function (true) -> #use "1.ml"
有什么办法吗?
| (false)-> #use "2.ml";;
#use
指令是OCAML Toplevel的解释环境(REPP)的一部分。这不是OCAML语言本身的构造。因此,您的示例代码作为OCAML程序没有意义。
但是,很明显您要做什么:您想在运行时选择一组功能的两个实现(即两个模块)。
这是一流模块的目的。请参阅此出色的答案。