【お知らせ】プログラミング記事の投稿はQiitaに移行しました。

PythonでJIT

PythonJITをしてみました。32bit Windowsに依存したコードです。

【注】PyPyのようにPythonのコードをJITコンパイルしたわけではありません。CPythonからバイナリ直書きでネイティブコードを生成して実行しました。

VBAでも同じことをやりましたが、それに比べて圧倒的に簡潔です。

PythonでWin32API呼び出しやJITがこんなに簡単にできるとは夢にも思いませんでした(C言語でブリッジモジュールのようなものを書かないといけないと思い込んでいたため)。ctypesのチュートリアルを見てもそのものずばりの例は見付けられなかったので、関係ありそうな箇所をピックアップして実験しました。

【追記】IronPythonでも動きました。

IDLE

Windows版Python付属のIDLE(エディタ+REPL)を使えば、VBA+イミディエイトと同じような感覚で遊べました。これなら適当に試行錯誤しながら模索できるかもしれません。良い取っ掛かりになりそうです。

f:id:n7shi:20120419224336p:plain