2012-03-01から1ヶ月間の記事一覧

Haskell でオートマトン

Haskell の勉強のため、オートマトン(DFA)を書いてみた。まずは簡単な例として、奇数個の 'a' を受理するオートマトン(http://kurt.scitec.kobe-u.ac.jp/~kikyo/lec/07/automaton/k2.pdf より)。汎用性は全く無視。 module Fa where import System.Environme…

SECD マシン(Haskell 版)

Haskell のパターンマッチを使って SECD マシンを書く。Lisp のコンスセルは、任意の Lisp のデータを対にした構造。Haskell のリストと Lisp のコンスセルは(わたしの理解が間違っていなければ)ちょっと違う。型で言うと、以下の通り。 (:) :: a -> [a] -> …