我是 Ocaml 编程的完整初学者,我无法将模块链接到我的程序中。实际上,我正在做一些正则表达式检查,并且我编写了一个函数,该函数基本上使用Str 模块基于分隔符字符串对字符串进行标记。所以我使用库中定义的函数,如下所示:
Str.regexp_string /*and so on*/
但是,当我尝试编译 ml 文件时,我收到一条错误消息,提示我有一个未定义的全局Str。我们通过键入 List.length 等来使用List函数,就像我对 Str 所做的那样,而不必显式包含特定模块。我试过了
open Str;;
include Str;; /*None of these work and I still get the same error*/
但是,如果在顶层我使用
load "str.cma" /*Then the program works without problems*/
我想将模块包含在 ml 文件中,因为我必须最后链接 3 cmo 才能获得最终的可执行文件(不在顶层运行)。我知道这是一个非常基本的问题,但我无法解决它。提前致谢。