型 m a の構造が
・Maybe … a に値Nothingを加えた型
・State … s -> (s, a)
・Cont … (a -> r) -> r
・List … [a]
のように様々な構造をしている。これらはそれぞれ なんらかの「計算」を表すと見なせる。例えば:
・Maybe … 「失敗した」という意味のNothingを含むように拡張した型
・State … 「前の状態」をもらって、計算結果と次の状態の対を返す計算
・Cont … 「継続」(a ->r) をもらって、答えの型rの値を返す計算
・List … リストのどれもが値であるような、非決定的な計算。非決定性オートマトンの状態を思い浮かべると近いか