Flash用のなにか
最近、Flashの勉強をしている。
と言ってもActionScriptは全然で、Flashのswfファイル解析、swf内のABC(ActiondcriptByteCode)解析みたいなこと。
FlexだってActionScriptをコンパイルしてswfを吐き出しているわけだから、これらの構造さえ理解できて出力することができれば、ActionScript以外の言語をコンパイルして動かすことができるのではないか。
例えばFlash用SchemeコンパイラHappyABCのような。
http://happyabc.org/
んでも、俺が考えることと言えば今も昔も一貫して「Rubyでゲームプログラミング」なわけだ。
つまりswfを吐き出すRubyコンパイラを作ってみたい。
もしRubyでゲームを作って、それがswfファイルになって、ブラウザで遊べるのならば、ゲームの配布とかの問題も無くなる。
実際にできるのかどうか、実行速度はどの程度なのか、というのはよくわからないが、とりあえずやってみないことには話にならない。
いまのところ、AVM2の仕様書を見ながらファイルの内容の解析はある程度できた。
仕様書の記述があいまいだから、FlexSDKを突っ込んでActionScriptをコンパイルしてどういうコードが出るのかを調べているところ。
ActionScriptも触ったことないし、Flashの予備知識も無しで、言語処理系なんか作ったこと無いっつー状態からのスタートで、果たして動くものができるのか、と思わないでもない。
きちんとした完成度の高いものができるとはちょっと思えないが、まあ、何か動けばいいだろう。そんな程度で。
ちなみにFlashPlayerで動作するswfを出力するRubyコンパイラは、Flash7時代のでよければ既にある。
http://sourceforge.net/projects/rubyonflash/