ToDo:
http://natu.txt-nifty.com/natsutan/2008/06/vm_e3c7.html
そうそうレジスタマシンのメリットってよくわからない ってのはたしかに。思いつくのは
あたりかなぁ。
あと parrot のドキュメント見ると速いと主張してるな。
http://www.namikilab.tuat.ac.jp/~sasada/prog/parrot-intro.html#i-4-2
スタックの伸長の話は本当かなぁ。 全然知らんけど関数呼ぶ時に レジスタを退避する空間というのはなんにせよ必要なので、 関数呼び出し時にスタック的なものは伸びると思う。 んでまぁスタックマシンも別に毎度律義にサイズチェックしつつ push pop するんじゃなくて、 関数入る時に必要な分だけ確保するんちゃうかな。
http://twitter.com/alohakun/statuses/841568669
はリアルマシンには正しいと思うけど VM だとたぶんあやしいかな。
http://d.hatena.ne.jp/scinfaxi/20080617#c1213757882
はどうなんだろう。 IA64 のレジスタ割り付けを妄想するに
全然普通通りなのでつまり適当で良さげなのかな。
なんかでも見聞きする限り IA64 は x86 なんかより はるかに複雑怪奇なんじゃないかな。 だからこそ死に絶える前に遊んでみたいんだけど。
(00:13)
なんか最近 VM とかそのへんに割と興味があるみたいだ。
レジスタ割り付けめどいにゃーとか。 適当に書いた部分直さないとにゃーとか。
あとそういえば、ネイティブ無理ポと思ったら コンパイル諦める機構が何かしらあるといいかなぁと思う。 例えば definemethod が来たら とりあえずコンパイルしておいて、 次回からの呼び出しにはそっち使うんだけど、 同じ definemethod が呼ばれるようなうざいことがあったら もうコンパイルシネーヨというような。
あんま深く考えてないのでわからん。
なんか最近興味が
とか作るといいと思う。 とにかく短いバイトコードを目指す VM 。
(02:15)
前 | 2008年 6月 |
次 | ||||
日 | 月 | 火 | 水 | 木 | 金 | 土 |
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
全てリンクフリーです。 コード片は自由に使用していただいて構いません。 その他のものはGPL扱いであればあらゆる使用に関して文句は言いません。 なにかあれば下記メールアドレスへ。