関数型プログラミング言語Haskell Part8
at TECH
416:デフォルトの名無しさん
08/01/12 09:42:37
>>409
確かに純粋であることに拘っているからという点は大きい。
しかし、それだけではなく、例えば、
Haskellではリストを使ったプログラムを書いている途中でそれを非決定性計算と
みなしてプログラムの一部を書くとか、IOに限らずモナドを気軽に使う人もいる。
そのためモナド一般を扱う便利関数(mapMとかモナド変換子とか)が多く用意されている。
IOがモナドになっているとそういった便利関数が使えるので便利。
また、モナドになっていると読みやすさのためにコードをまとめたり
移動させたりといった操作が気軽にできる。
例えば副作用のある言語で
f x = x + y + (副作用のある式)
where
y = (副作用のある式)
とかやるとどの順番で副作用が現れるかとか、yはどのタイミングで
何回評価されるのかわからない。
Haskellであればそのような問題はないので気軽にwhereにコードを
まとめたりできる。
次ページ続きを表示1を表示最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
5226日前に更新/201 KB
担当:undef