最終更新日 2024-09-25

C#からIronPythonへの変換

概要

C#からIronPythonに変換する方法等が記載されています。

まず、本当にIronPythonにする必要があるか?

hmPy/IronPythonは、C#で作成された.dllをそのまま実行可能です。
もちろんC#で定義されたクラスをIronPythonで継承して利用することも可能です。

「C#」は

と非常に高バランスで均衡がとれた言語です。
IronPythonに変換する前に、C#でそのまま作った方が良いのではないか?
ということを検討することをお勧めします

当管理人としては、基本的な指針としては、

ぐらいまではC#で作成し、

だけIronPythonにする、というのが理想的ではないかと考えています。

SharpDevelop 4.4でC#からIronPythonに変換できる

C#で制作したソースは、「C#文法」に「対応する文法」が「IronPython文法」に存在するものに関してなら、
SharpDevelop 4.4で機械的にIronPythonへと変換可能です。

これはC#での制作経験は豊富だが、IronPythonの経験は乏しいといった人に、
向いた変換手法と言えるでしょう。
(日本国内でプログラムを記述する人は大半がIronPythonよりC#の方が経験があると思われます)

SharpDevelop導入時にファイル拡張子の関連付けをするな!! C#ユーザーのほとどがVisual Studioにて開発しているでしょうから、
SharpDevelop導入の際、インストール時に「ファイルの関連付け」を設定する項目がありますが、
間違ってチェックを入れてしまわないように注意しましょう。

変換時に、「IronPython.Modules.dll v 2.7.5が無い」旨の英語のエラーが出る

IronPython 2.7.6以降をインストールしている場合は、SharpDevelop v4.4が正しく認識できないため、
エラーが発生します。

以下の手順で修正することが出来ます。