先日の日記の続きです。 FUNCTIONAL PEARLS Monadic Parsing in Haskell を参照して、(というかほぼHaskell->F#の写経)モナディックなパーサコンビネータをF#で書いてみました。速度・機能などはまったく実用に耐えませんが、移植の過程でかなりパーサコンビネータに対する理解が深まりました。上のpdfはとてもわかりやすく解説されており(学生のために書かれた文書のようです)、パーサコンビネータを実装した事のない人、僕のようにパーサコンビネータ自体知らない人には最適な入門となると思います。 ところでパーサコンビネータができたのは良いのですが、いざこれを使おうとすると、文法定義はまだ良いもののセマンティックアクションを実装しようとするとラムダ抽象のネストになってしまいます… Computation Expressionなどを使ってインターフェー