コンパイラ屋にとってのFizzBuzzであるbrainfuckを(今更)Haskellで実装してみる。 Haskell実装は型レベルで書いたりピュアに書いたり色々だけど、ここではParsec3の機能を使ってパースと評価を同時にやってみる。 参考サイトHaskell で Brainf*ck interpreter Brainfuck - Wikipedia Parsec 3活用事例: Keepalived構文チェッカ ソースmodule BrainFuck where import Text.Parsec import Control.Applicative hiding ((),many,optional) import Control.Monad.Trans (liftIO) import Control.Arrow (first, second) import Control.Mona