>>221
>参照透明を保ったまま副作用を扱う仕組みがモナド

駱駝師匠の受け売りではないが、参照透明を保ちつつモナドで
隠伏的に世界状態を受け渡すのがHaskellのIOのコツなんで、
普通の言語で「副作用」と呼ばれるものを、世界→(値,世界)な
関数としていわば「主作用」にしているというべきではあるまいか。

つうかだな、この観点からは手続き型言語の手続き自体が、
計算機の状態から計算機の状態への純粋な関数なんだよね。