Smalltalkパーザー

夕方ふと思い立ち、Squeak版METAでSmalltalk-80のパーザーを書いてみた。GNU Smalltalkのページを眺めつつ(http://www.gnu.org/software/smalltalk/gst-manual/gst_41.html)、Squeak風に書き換えつつ、そしてページに書いてある文法のバグを見つけつつである。

今日のところはtokenizerとparserを別パスとして書いたわけだが、PEGの利点の一つは両者を一つの記述で書きやすくなっているところにもあるわけだし、あしたはひとつのクラスにまとめた形で書いてみよう。