>>453
サンクスだが、まず文章レベルで不明点がいくつかある。一つ一つ聞きたい。

> 明示して引数で持ち回れば純粋な関数、
何を明示?何が持ち回れば?
要するに、型がA->Bなのは純関数と言ってる?

> 暗黙に引き渡せば副作用を持つ不純な関数(ないし手続き)。
型がA->MBなのは不純関数と言ってる?

> 明示して引数で持ち回る純粋な関数の
> 引数部分を隠蔽したのがモナド。
A->MBのMがモナドだと言ってる?

> だからモナドは手続きと同じ構造を持つというだけ。
この後とも関係するが、IOモナドは手続きっぽいが、
リストは手続きではないよね。

> リストモナドの非決定性計算を副作用と考えるような「副作用」の定義に拠るなら、
> 全てのモナドは副作用を扱っている(が、そう考えても別に役には立たない)。
リストをなぜわざわざ非決定性なんて呼ぶの?値が複数あるだけだね?
非決定性計算をなぜ副作用と呼ぶの?純関数は非決定的ではないから、
というなら、「副作用」って「不純」と同義に使っているのかな?