トップ «前の日記(2014-09-10 (Wed)) 最新 次の日記(2014-12-31 (Wed))» 編集

uDiary

海野秀之(うんのひでゆき)の外部記憶

Twitter (twilog) / RSS / アンテナ / ぶくま

2006|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|08|
2010|01|02|03|05|06|07|10|11|
2011|03|08|
2012|02|04|07|08|10|
2013|01|02|03|05|06|08|11|12|
2014|01|02|05|06|07|08|09|12|
2015|01|02|03|04|

2014-09-12 (Fri)

[Tiger][Haskell] Tigerbook 9章 つづき

https://github.com/unnohideyuki/Tiger-in-Haskell

Codegen を書いていて、これまでのところでイマイチわかってなかったところに気づいて修正。関数の戻り値は、Tree 言語上どうやって表現されることになってたのか、わかんなくなって。Translate では、戻り値を RV に格納するような MOVE 命令を Proc の body に追加するべきだった。

Translate をそのように直して、それに対応する MOVE 文の munchStm も書いた。

Tiger 言語の関数・プロシージャは、すべて、Dalvik 上では Object を返すメソッドにマッピングされることになる。(UNIT は CONST 0)

Canon の理解があやふやなのは、動かしながら&テストを書きながら理解していこう。

だいぶ、わからない部分がなくなってきた。

9章ぬけたら、いよいよレジスタ割り付けだ。


2006|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|08|
2010|01|02|03|05|06|07|10|11|
2011|03|08|
2012|02|04|07|08|10|
2013|01|02|03|05|06|08|11|12|
2014|01|02|05|06|07|08|09|12|
2015|01|02|03|04|
Categories 3imp | Card | Cutter | Dalvik | Euler | Football | GAE/J | Hand | Haskell | Re:View | Ruby | Scheme | TQD | Tiger | TigerBook読 | UikiTeXi | Verilog | Violin | Web | parconc | tDiary | お勉強 | エントロピー | ツン読 | | 将棋 | 政治について | | 模写してみよう | 確率論 | 設定など | 雑文 | 音声