インタープリターと動的コンパイラーはテスト/プロトタイピング用であり、テストが完了したら静的コンパイラーを使用します。
3 に答える
沢山あります。
そのような言語の1つがObjectiveCamlです。要件と照らし合わせて確認しましょう。
- 高水準言語:Camlは、関数型、オブジェクト指向、および命令型のプログラミングをサポートしています。
- インタプリタ:
ocaml
システムは読み取り-評価-印刷ループです。 - 動的コンパイラ:動的ロードをサポートするプラットフォームでは、ocamlrunはC共有ライブラリ(DLL)と動的にリンクできます。
- 静的コンパイラ:コンパイラの
-linkall
フラグを介して使用できます。 - マルチメディア: 2Dグラフィックス、3Dグラフィックス、オーディオ、およびビデオ用のライブラリがあります。
より大きな問題は、あなたの仕事に最適なツールを見つけることです。多くの言語がこれらの要件を満たしていますが、最も使用されている言語には、最高のドキュメントとライブラリへの最もテストされたバインディングがあります。Camlのような言語を使用する場合は、他の言語では見つけることができない、その言語に対するいくつかの最も重要な利点があるはずです。
幸運を!
Java にはこれらすべてがあります。標準の Sun JVM にはインタープリターと動的コンパイラーの両方があり、GNU Compiler for Java ( GCJ ) はマシン コードに静的にコンパイルできます。
最適なオプションは、アプリケーションの種類によって異なります。リアルタイム プログラムの場合は、C++ を使用する (または C を使用する) ままにしてください。Ruby/Perl/Python のような高水準言語は、この分野でそれらに勝るものはないからです。しかし、将来のプログラムの複雑さが十分に高い場合、Python + PyOpenGL (グラフィックス用) + PyOpenAL (サウンド用) およびPyODE (リアルタイム物理学用) に最適なオプションが表示されます。実際、Python の VM は十分に高速ですが、(少し努力すれば) プラットフォームに依存する最適化されたコードにコンパイルすることもできます。
または、2D グラフィックスにPyGameを使用して、快適なサウンド/音楽管理を行うこともできます。