IronPython は、python.org の Python の既定の Windows 実装にどのように対応していますか? Python を学習している場合、IronPython を使用して微妙に異なる言語を学習することになりますか? また、どのライブラリがなくてもできるのでしょうか?
あるいは、IronPython (.NET IL でコンパイルされたクラスを除く) をより魅力的なオプションにする長所はありますか?
IronPython は、python.org の Python の既定の Windows 実装にどのように対応していますか? Python を学習している場合、IronPython を使用して微妙に異なる言語を学習することになりますか? また、どのライブラリがなくてもできるのでしょうか?
あるいは、IronPython (.NET IL でコンパイルされたクラスを除く) をより魅力的なオプションにする長所はありますか?
コードの書き方には微妙な違いがありますが、最大の違いは利用できるライブラリにあります。
IronPython を使用すると、すべての .Net ライブラリを利用できますが、.Net VM に移植されていない「通常の」python ライブラリの一部が犠牲になると思います。
基本的に、構文とイディオムは同じであると想定する必要がありますが、IronPython 用に作成されたスクリプトを「通常の」Python インタープリターに渡そうとすると、実行されません。おそらくその逆の可能性が高いですが、そこにも違いがあると思います。
ブログ投稿を参照してください。IronPythonは一方向のゲートです。StackOverflowで質問することからIronPythonについて学んだいくつかのことを要約しています。
Pro:SilverLightがインストールされている場合は、ブラウザーでIronPythonを実行できます。
IronPython の長所の 1 つは、CPython とは異なり、IronPython はグローバル インタープリター ロックを使用しないため、スレッド化がより効果的になることです。
標準の Python 実装では、スレッドは各オブジェクト アクセスで GIL を取得します。これにより、並列実行が制限されます。これは、複数の CPU を完全に利用することが予想される場合に特に重要です。
また、コードを Linux で動作させるかどうかによっても異なります。IronPython が Windows プラットフォーム以外で動作するかどうかはわかりません。