タグ

ブックマーク / nida-001.github.io (1)

  • Haskellにかかわるウソホント

    以下ポエム. ホント1. Haskellは純粋関数型言語である せやな ウソ1. 再帰は分かりやすい 今すぐ関数プログラミング 珠玉のアルゴリズムデザインを買え.そして難しさに絶望しろ! 再帰で書かれていてとても分かりやすいはずだろう? 現実問題として, f x y = f (f (g x) y) y のように関数自身の引数に再帰が出現するパターンだと動作理解は難しいと思います. また,ループより再帰が分かりやすいというのもたまに見ますが謎な意見です. ループが限定的な再帰であるならば,用途が限定されてるぶん再帰よりも理解も楽です. ウソ2. IOモナドは素晴らしい まずは心を落ち着けてJavaの検査例外批判を思い出しましょう. f がgを呼び,gがhを呼んでる状況で,メモ化のためにhをIOにしたとします. するとgがIO化し,fもIO化していかざるを得なくなることが多々あります. すると

  • 1