情報技術 > プログラミング > Haskell
__NOTOC__
right
Haskellは関数型言語であり、他のプログラミング言語を触ったことのある読者なら、Haskellのやり方は他の言語とは多少異なっていることが分かるでしょう。
Haskellの独自性は二つあります。一つは、「純粋」関数型言語であることです。純粋関数型言語では、同じ関数を同じ引数で呼び出した場合、必ず同じ戻り値になることが保証されます。二つ目は、Haskellが極めて現代的な型理論を備えていることです。Haskellでは、型クラスや代数的データ型などの型を扱うことができます。これらの難解な概念は、今は全く理解できないかもしれませんが、この本を読み終えた後には、より身近なものに感じられるでしょう。
さて、Haskellerたちはこの言語のどこに魅力を感じているのでしょうか。ユニークで新しい感覚を得られるからでしょうか。しかし、Haskellの最も優れた性質は、純粋関数のみによって書かれていることで、プログラムを容易に理解でき、プログラムの正しさを簡単に示せることです。さらに、優れた型システムは、誤ったプログラムの修正にも役立ちます。単純なミスだけでなく、根の深い、厄介な問題の解決にも役立つのです。
この本では、Haskellおよびプログラミング一般に関するトピックを扱います。熟練プログラマの読者は、最初の間は少し辛抱して読み進めていただきたいです。Haskellは、読者が慣れ親しんできたであろう他の言語のほとんどと全く異なっており、他の言語での積み上げてきた習慣がかえって理解の妨げになるかもしれません。Haskellの仕組みは単純ですが、他の言語とは異なっているのです。他の言語でのプログラミング経験のある読者は、以前とは全く異なる世界、複雑な対象への巧みなプログラミングと、関数型プログラマの数学的思考法の世界を探検するつもりでいてほしい。
この本は3つの部分、初級教程、上級教程、実用プログラミングのセクションからできている。実用プログラミングの項目では、実際の場面で使うプログラミングの方法について解説する。これは初級教程だけの知識で読むことができる。
このセクションでは、Haskellの最も基本的な部分と、頻繁に利用するライブラリを紹介する。この教程によって、単純なプログラムを書くことができるようになる。ほとんどの章には演習問題があり、新しく学んだ知識について練習することができる。解答つき。
このセクションでは、関数型プログラミング言語Haskellの扱う様々な理論的概念を紹介する。型理論、データ構造の解説に加えて、プログラムの並行性といった実用的な議論もここで行う。
このセクションでは、より実際の問題をプログラミングする場面で必要になる、標準ライブラリの使い方やGUIの作り方、データベースへの接続といった内容を解説する。