2/27/2009

IronPythonへの移植

Pythonコードへの外部化に成功した。
今回ネックになったのは、DLLのImport
そもそも名前空間だけ異なる同じプロジェクト内に存在するファイルのクラスをどのようにして認識させるのか分からなかったので、そもそもそれはDLL化した。
まぁそこまでやると普通のDLLの登録と変わらない。
AssemblyNameはdllのプロパティからデータを取って、妥当性チェックをすることができる。名前空間のImport自体はオブジェクトブラウザにDLLを食べさせることができれば問題なくできる。
ただPythonのコード自体の妥当性チェックに有効な方法があまりないのが現状で、このコンパイルエラーをより厳密に特定できるようになれば、生産性は格段にあがると思う。
あとは、ImportのSyntaxSugerがもっとほしいとは思う。
とりあえず前のエントリの情報に従っていけば、IronPython1.1は十分エンジンとして組み込み可能なことが分かった。ただやはりハードコーディングのほうが実行速度は速い。事前コンパイルのエンジンを駆動させることができればより早くなる可能性はある。要検討だと思う。

0 件のコメント:

コメントを投稿