2012-02-29 4 views
0

おそらくこの質問は簡単ですが、私はOcamlプログラミング言語の初心者です。私はOcamlで書かれたインタプリタをWHILE言語でWeb上に見つけました。より正確には、私は5つの.mlファイルを実装しています:While-languageインタープリタOCaml

  • メイン;
  • セマンティクス;
  • 種類;
  • タイプチェッカー。
  • データフロー分析;

これらのファイルはどのように使用しますか?たとえば、WHILE言語で書かれたプログラムを実行したいのですが?

私は(ocamlc -c file.ml)ファイルをコンパイルしようとしましたが、失敗しました。

ocamlパッケージがインストールされたubuntuで作業しています。

+1

事が十分に簡単であれば、 'ocamlbuild Main.byte'を試すことができます。次に、あなたはそれを実行します。/ Main.byte' – Ptival

+3

あなたが正しい情報を提供しないと、人々があなたを助けることをどのように期待していますか?あなたがソースを見つけた場所(または宿題ですか?)へのリンクを提供することは難しいでしょうか。ファイルリストは何ですか? 'ls' –

答えて

5

私はこのように、あなたは非常に単純なOCamlのファイルをコンパイルできることを確認する最初の推薦:

$ cat tiny.ml 
let() = Printf.printf "hello, world\n" 
$ ocamlc -o tiny tiny.ml 
$ tiny 
hello, world 
$ 

これが動作する場合は、次の質問は、あなたがネット上で見つかった5つのファイルが実際にあるかどうかでありますよく形成されたOCamlモジュールのコレクションです。もしそうなら、を正しい順序でコンパイルする必要があります。(依存関係順)。正しい順序は、B、C、D、Eであれば、あなたが言うことができる必要があります:

$ ocamlc -o whileinterp a.ml b.ml c.ml d.ml e.ml 

順序を識別するために、あなたはからファイルを持ってどこに、私は実際に相談すると思います。 120種類の可能な注文があります!これが不可能な場合は、モジュールの依存関係から推論することができます。