路傍のプログラマ

只のプログラマが綴る愚痴と備忘録

IronPython 2.6 ベータ2

2009-07-26 01:59:33 | プログラミング
リリースノート
http://ironpython.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=27350
によると、

バグ修正のほかに、pdbや_ctypesが強化されてるようです。

pdb(デバッガーむけのインターフェイス)と聞いて、ひょっとしてpydevと一緒に使ったらeclipse上でステップ実行できるかも?と思って試してみましたが、まだ動かないようです。

もし動いたら、Java(Sunというかオラクル)で記述されたEclipse(IBM)上でPython(Google)とコンパチのIronPython(MS)インタプリタでデバッグ、という摩訶不思議な図になるのですが・・・

64ビットWindowsへの対応として、ipy.exe以外に、ipy64.exeが用意されたそうですが、リリースノートの説明を読んで一瞬「?」。

・ipy.exeは64ビットOSでも32ビットOSでも32ビットプロセスとして実行される。
・ipy64.exeは64ビットOSで動かすと64ビットプロセスとして、32ビットOSだと32ビットプロセスとして実行される。

この説明を、OSの方から整理してみます。

・64ビットOSでは、ipy.exeは32ビットプロセス、ipy64.exeは64ビットプロセスとして実行される。
・32ビットOSでは、ipy.exeもipy64.exeも32ビットプロセスとして実行される。

これでやっと腑に落ちました。コンパイルして配布するバッチプロセスでIronPythonを呼び出すときを想定してこうなってるんだなあ、と。

・32ビットプロセスとして実行したいときはipy.exeと書いておけば良い。
・64ビットプロセスとして実行したいときはipy64.exeと書いておけばよい。ただし、32ビットOSで実行された場合には、いきなり「64ビットOS用のコードは実行できません」エラーで終了するのではなく、32ビットプロセスとして実行してみる。

という動作になります。

(同日追記)

32ビットのマシンにインストールするとipy64.exeがコピーされない(あるいは作られない)ところを見ると、上記はバッチファイルよりはコンパイルしたものを想定した動作のようです。

最新の画像もっと見る