Diary/2005-11-14
Sablecc
いったい何度パーザを書けば気が済むんだといわれそうだけど,
Sableccでパーザ書いてみたり.
文法定義と,実装が完全に別れていたり,
できたコードを動作させるのに特別なランタイムが必要なかったり,と
いい感じ.
基本的な使い方は,DepthFirstAdapterを継承した解析クラスつくって
outXXX
で処理を書いていく.
DepthFirstAdapterで定義してある,パーズ結果の深さ優先が嫌なときは,
caseXXX
で順番を変える.
なかなか気持ちよく書けるなぁ.