这个问题可能很简单,但我是Ocaml编程语言的初学者。我在网上找到了一个用Ocaml编写的解释器,用于WHILE语言。更确切地说,我有5个.ml文件实现:
如何使用这些文件?例如,如果我想运行用WHILE语言编写的程序,我该做什么?
我曾尝试编译(ocamlc -c file.ml)我拥有的文件,但没有成功。
我正在使用安装了ocaml软件包的ubuntu。
答案 0 :(得分:5)
我建议首先确保您可以编译一个非常简单的OCaml文件,如下所示:
$ cat tiny.ml
let () = Printf.printf "hello, world\n"
$ ocamlc -o tiny tiny.ml
$ tiny
hello, world
$
如果这样做,下一个问题是你在网上找到的5个文件是否实际上是一个结构良好的OCaml模块集合。如果是,那么您需要以正确的顺序编译(按依赖顺序)。如果正确的顺序是a,b,c,d,e,那么你应该能够说:
$ ocamlc -o whileinterp a.ml b.ml c.ml d.ml e.ml
要识别订单,我实际上会在您从哪里获取文件时进行咨询。有120种不同的订单!如果这是不可能的,您可以从模块依赖项中推断出它。