Haskell/Java 相互運用の現在のソリューションは何ですか? Meijer と Finne による Lambada に関する論文を見たことがあります。GCJNI というプロジェクトがありますが、現在は機能していないようです。リンクが壊れています。箱から出して使用できるものはありますか?
2827 次
2 に答える
11
GHC FFIを使用すると、Java がJNA経由で使用できる Haskell ランドから関数をエクスポートする共有ライブラリを作成できます。別の方法として、この同じ共有ライブラリを使用して、グルー コードを作成し、JNI を介してそれを公開して、より「Java-y」なインターフェイスにすることもできます。FFI を介して十分な JNI を Haskell に公開し、実際に Java を使用することもできます (これは、Lambada の論文が採用しているアプローチの一部です)。
Haskell 共有 lib + JNA が最も単純で簡単な方法だと思います。これは、一部の Java オブジェクトを Haskell に公開するよりも、いくつかの Haskell 関数を Java に公開する方が簡単であると想定しています。他の方向に進むための洞察については、Java ではなく C# であるSalsaに興味があるかもしれませんが、インターフェースを設計する際の原則は興味深いかもしれません。
于 2012-03-10T21:57:40.740 に答える
1
実際には相互運用性はありませんが、http rest または zeromq を使用できます
haskell バインディング: http://www.zeromq.org/bindings:haskell
于 2012-03-11T07:04:30.183 に答える