mike-neckのブログ

Java or Groovy or Swift or Golang

『すごいHaskellたのしく学ぼう!』読書メモ〜4章

第四章

再帰が重要な理由

  • 問題を大きな問題からより小さな問題に分解する
  • これ以上分けられない基底部まで分解する
  • 基底部では解を明示的に定義する
  • 大きな問題は関数を自分自身に再帰的に適用することで部分問題を再帰的に解いていく
  • 最終的に解を部分的な解から構築する

命令型言語との違い

  • 関数型
    • 求めるものが何であるのかを考える
  • 命令型
    • どのように処理していくかを考える