動機 Haskellの本を読んでは見たものの、まだ自分で自由にプログラムを書けない初心者です。でも、初心者だからこそ、初めて学習した時の感じ方、考え方を述べておくことは大事かな、と思って、今の自分の目線で感じたことを書いてみました。 Haskellとは 遅延評価を持つ純粋関数型プログラミング言語です。 関数型プログラミング言語は、関数型プログラミングに適したコンピュータ言語です。 関数型プログラミングの定義については、諸説あって難しいみたいなのですが、とりあえず自分の今の理解として「関数のメリットを最大限に活かしたプログラミング方法」だと思います。 Haskellでは、関数のメリットを最大限に生かすため、強い型定義と型推論、純粋関数と純粋でない関数の区別、モナドの導入、無名関数、関数の部分適用・関数合成・カリー化、遅延評価、末尾再帰最適化など、いろいろな仕組みが用意されています。 Hask