3

プロジェクトにスクリプトを追加したいと考えています。

どのスクリプト エンジンを使用するか迷っています。過去にV8を使用したことがありますが、非常に印象的です。私も Mono を使用しましたが、おもちゃのプロジェクトまたはプロトタイプでのみ使用しました。

制約は次のとおりです。

  1. 実行速度。
  2. 簡単な統合。
  3. Windowsで動作する必要があります。
  4. 64 ビットのサポート。
  5. Visual Studio でコンパイルします。

どのエンジンが一番合う?

(Visual Studio を使用して win64 で Mono をコンパイルするためのチュートリアルはありますか? Lib ファイルと DLL を含むパッケージはありますか?)

4

5 に答える 5

7

Luaをご覧になることをお勧めします。お客様のニーズに十分に合致していると思います。

于 2011-03-05T05:41:56.510 に答える
4

賛成の回答がないので、ChaiScript について言及します(はい、私はプロジェクトの共同作成者です)。これは、C++ アプリケーションへの埋め込み専用に設計された、ヘッダーのみのスクリプト エンジンです。64 ビットを完全にサポートし、MSVC、G++、および MinGW で動作します。唯一の外部依存関係は boost です。

勝てないのはスピードです。スクリプト自体で多くの計算を行う必要がある場合は、スクリプトの使い方が間違っていると思います。スクリプト エンジンに公開できる関数のレベルが高いほど、優れています。

于 2011-03-05T05:36:58.213 に答える
3

V8. これは実際に、Mono (Java のサイズに匹敵する) のような完全なプログラミング環境ではなく、スクリプト エンジンです。

ただし... スクリプト言語が必要な場合は、Lua も検討することをお勧めします。組み込みが簡単で、非常に高速で、非常に小さく、プログラミングが非常に簡単で、非常に自由なライセンスを持っていることで有名です。速度が重要な場合は、LuaJIT があります。これはまだ開発中ですが、注意を払えば、数値プログラミングで C を簡単に打ち負かすことができます。

于 2011-03-03T12:11:03.413 に答える
2

Mono ディストリビューションには MSVS ソリューション ファイルが含まれており、ライブラリをビルドするのに十分です (ただし、.DLL をビルドすることはできません。バイナリ ディストリビューションから選択することをお勧めします)。mkbundle.NET DLL を単一のバイナリに埋め込む方法については、を参照してください。スクリプト自体については、Mono C# コンパイラ (それほど大きくなく、簡単に統合できます) を埋め込むか、IronPython などの .NET を対象とする多数のスクリプト言語のいずれかを使用できます。

于 2011-03-03T12:29:41.303 に答える
0

Boost.Pythonを使用すると、Pythonも悪くありません。

于 2011-03-03T12:23:48.567 に答える