トップ 差分 一覧 Farm ソース 検索 ヘルプ PDF RSS ログイン

Diary/2004-10-17

LALR(1)

C言語パーザがほしくてなんとなく実装していたのですが、
拡張するたびに、いきづまってしまったので、ちゃんとLALR(1)したくなってきました。
後の処理がschemeなので、schemeなLALR(1)パーザ誰かかいてないかなと探してみると
A portable and efficient LALR(1) parser generator for Schemeと、ちゃんと書いている人が。
guile用にmakeして、prettyprintをprintでおきかえたら、gaucheで使えるように。
これで、だいぶ楽に実装できるかな?できるといいな。
lexerの仕様が自分でかいてたのとちょっと違うので結構手をいれなきゃだけど...

...と思ったけど、

やりたいことは、このLALRパーザの外側ではできなかった。
実装の切り分け方がおかしいのかな〜。
とりあえず自分でLALRパーザ実装することに。

#<undef>

デバグメモ
値を返そうとしていたつもりなのに#<undef>がかえってくる場合は、
たいていifやcondの条件が足りない場合が多いよう。
VHDLとかでも一緒か...メタステーブル。