2009-01-05
■ コンパイラ完成
今日は一日コンパイラ.ものすんご〜〜〜い,大変だったけど,なんとかできた.先日の見積もりはものすごく甘かった.バグはかなり潜んでいるものだ.
最終リビジョンは349.コード生成フェーズに入ったときは145で,それ以前の構文・意味チェックでのコミット回数を遥かに凌ぐ改訂回数だ.
| 行数 | 単語数 | 文字数 | |
| 20 | 28 | 377 | common.h |
| 37 | 70 | 852 | init.c |
| 46 | 112 | 1192 | t_scan.c |
| 53 | 176 | 1496 | prototype.h |
| 55 | 97 | 1279 | util.c |
| 61 | 122 | 2258 | spc.c |
| 61 | 162 | 3050 | vars.h |
| 72 | 495 | 5918 | message.h |
| 75 | 141 | 1720 | err.c |
| 87 | 180 | 2370 | is_ValidOperator.c |
| 92 | 223 | 2005 | constant.h |
| 112 | 196 | 2930 | s_Program.c |
| 136 | 298 | 4981 | s_sc_Var.c |
| 229 | 523 | 7360 | symbol_list.c |
| 249 | 585 | 6842 | s_sc_Expression.c |
| 381 | 771 | 11078 | s_sc_Block.c |
| 413 | 1007 | 13156 | gen_code.c |
| 478 | 1011 | 15088 | s_CompoundStatement.c |
| 2657 | 6197 | 83952 | 合計 |
それにしても,よくやったと思う.相当キツかったよ.規模の大きさもそうだね.こんな大規模なソースを書いたことなんてないよ.
与えられたテストデータだけでは,チェックは不十分.特に,再帰後の変数が保持してるかはチェックした方がいいね.
明日は休養日として,水曜にレポートを書き上げたいッ!