Haskellは関数型言語であり、他のプログラミング言語を触ったことのある読者なら、Haskellのやり方は他の言語とは多少異なっていることが分かるでしょう。 Haskellの独自性は二つあります。一つは、「純粋」関数型言語であることです。純粋関数型言語では、同じ関数を同じ引数で呼び出した場合、必ず同じ戻り値になることが保証されます。二つ目は、Haskellが極めて現代的な型理論を備えていることです。Haskellでは、型クラスや代数的データ型などの型を扱うことができます。これらの難解な概念は、今は全く理解できないかもしれませんが、この本を読み終えた後には、より身近なものに感じられるでしょう。 さて、Haskellerたちはこの言語のどこに魅力を感じているのでしょうか。ユニークで新しい感覚を得られるからでしょうか。しかし、Haskellの最も優れた性質は、純粋関数のみによって書かれているこ