論理面も怪しいし、利用してるAPIも適当なんでアレで動くものじゃないですが、大枠だけ書いてみるテスト。 参考はParsecですが、状態管理はだいぶ省略してます(特にエラー情報)。 http://www.cs.uu.nl/people/daan/download/parsec/parsec.html http://www.lab2.kuis.kyoto-u.ac.jp/~hanatani/tmp/Parsec.html あと以下のPPTは、関数型なパーザーがどういう仕組みかわかりやすいかもしれない Programming in Haskellの8章: http://www.cs.nott.ac.uk/~gmh/chapter8.ppt (function (){ var PState = { source: ""; index: 0; result: null; }; var Parser