2011-08-12 18 views
15

私は両方がJVM上で動作するので、ScalaとJythonを一緒に使うことができると思います。彼らはどの程度インターフェースをうまく持っていますかJythonからScalaライブラリを呼び出すことはできますか? ScalaのJythonライブラリはどうですか?ScalaとJythonの相互運用性

答えて

13

Daniel Spiewakの最新のOSCONで、さまざまなJVM言語作成者との相互運用性の問題について議論したthis reportを見てください。あなたの質問には答えませんが、考えられる問題をよりよく理解できるかもしれません。

確かに私はあなたに伝えることができます。 ScalaはJavaから呼び出すことができるので、Javaを呼び出すことができるものはScalaを呼び出すことができます。 Jythonを呼び出すScalaについては、JavaがJythonを呼び出せるかどうかによって異なります。可能であれば、可能です。しかし、相互運用性の問題が存在する可能性があります。

+2

ありがとうございます。あなたの答えは正しい方向に私を指摘しました。私はそれを調べました.JythonをJavaから呼び出すことは可能です。それを行うための推奨される方法は、Pythonオブジェクトを優れたJavaオブジェクトに変換するファクトリを使用することです。 [Jython.org](http://www.jython.org/faq2.html)と[Python.org](http://wiki.python.org/jython/JythonMonthly/Articles/October2006/3)を参照してください。 –

+1

しかし、ScalaコードはJavaから呼び出すのが難しいかもしれません - あなたはScalaの翻訳方法を理解する必要があります。複雑なScala機能を使用すると、実際には醜いことがあります。 – Blaisorblade

+1

@ BlaisorbladeすべてのJVM言語で、最良の相互運用性の結果は、Javaを対象としたAPIを利用できるようにしたことによるものです。 –