我有以下文件层次结构:
foo.mlpack
Foo/
bar.ml
baz.ml
foo.ml
我希望能够做到以下几点:
let () =
Foo.Bar.some_func1 ();
Foo.Baz.some_func2 ();
Foo.some_func3 ()
foo.ml
在创建Foo
模块时如何告诉 ocamlbuild 考虑?
编辑 1
感谢 daniel-bünzli 的回答,我能够做我想做的事。所以现在,我处于以下场景:
_tags
foo.mllib
foo.ml
Foo/
bar.ml
baz.ml
toto.mllib
toto.ml
Toto/
...
bar.ml
...
现在的问题是它Toto.Bar
似乎被Foo.Bar
. 我无法访问Toto.Bar
的内容。
编辑 2
好的,事实上这不是一个真正的问题。
我刚刚重命名Foo/bar.ml
-> Foo/fooBar.ml
。
所以我有以下内容foo.ml
:
module Bar = FooBar
如果我理解正确的话,Jane Street 的人会在Core_kernel
withCore_list
和其他一些模块中做同样的事情。