第4章
型の基礎
Haskellは静的型チェックという仕組みを使用している。つまり、Haskell内ではあらゆる式に型が割り当てられる。たとえば、'a' は "character" を意味するChar型を持つ。そして、ある型の引数をとる関数に誤った型を与えると、コンパイル時エラーになる (つまり、そのプログラムをコンパイルできない)。これにより、プログラムに紛れ込むバグの数を劇的に減らすことができる。
さらに、Haskellは型推論という仕組みを使用している。つまり、式に型を指定しなくてもよい。ちなみに、Cでは変数を定義するとき (たとえば、int、charなどの) 型を指定する必要がある。Haskellではその必要がない。型は状況に応じて推論される。
■注■ 確かに、式に対して明示的に型を指定することも可能ではある。そうしておくとデバッグの際に役立つことが多い。実際、最外関数の型は明示的に指定するのがよいとされることもある。
HugsとGHCiのどちらにも、型推論を適用して式の型を見つけ出す機能が用意されている。:tコマンドを使用すればそれが可能だ。たとえば、お気に入りのシェルを起動して以下のようにしてみよう。
Prelude> :t 'c'
'c' :: Charこれは、式 'c' が Char という型を持つことを示している (Haskell では、二重コロン
:: を使って型を指定する)。前ページ「3.8 対話処理」
次ページ「4.1 単純型」
1 はじめに
2 スタートガイド
4 型の基礎
5 Basic Input/Output
6 Modules
7 Advanced Features
8 Advanced Types
9 Monads
10 Advanced Techniques
A Brief Complexity Theory
B Recursion and Induction
C Solutions To Exercises
これは、Haskell (ハスケル) のチュートリアル "Yet Another Haskell Tutorial" を日本語に翻訳したものです。
オリジナルのドキュメントは、
http://www.cs.utah.edu/~hal/docs/daume02yaht.pdf
などから入手できます。
日本語訳に関するご指摘は、コメントとしてお寄せください。
オリジナルのドキュメントは、
http://www.cs.utah.edu/~hal/docs/daume02yaht.pdf
などから入手できます。
日本語訳に関するご指摘は、コメントとしてお寄せください。
【Yet Another Haskell Tutorialの最新記事】

