型の概要
型 とは関連する値の集合だと考えることができます。またはデータの種類や性質だと考えることもできます。
例えば真偽を表す bool 型は真を表す true と偽を表す false の2つの値が所属する集合だといえます。
型 は主にプログラムの安全性を強化・強制・担保するために使われます。
型によって何かしらの処理が正しく行えるかの事前検証ができるようになったりします。例えば整数を引数に求めている関数に対して実数や文字列を指定すると、この事前検証に引っかかるため未然にバグの混入を防げます。
F# は静的型付け言語なので、コンパイル時に型のチェックが行われます。そのため “整数” を引数として求めている関数に対して “文字列” を渡しているとコンパイルエラーとなります。これが上述した「事前検証に引っかか」っている状態です。
整数や実数、文字列などを表す型については非常に直感的なものなのでわかりやすいのですが、関数型のように抽象的な型も多く存在しています。そのため型によっては理解するのに少し時間がかかるものがあることを留意しておく必要があります。
F# は .NET 上で動作する言語であるため、当然すべての .NET 組み込み型に対応しています。F# ではそれらを 基本型 と呼びます。
組み込み型 というのはプログラミング言語の標準機能として元から提供されている基本となる型のことです。
言語にもよりますが、ほとんどの言語で数値型や文字列型などがデフォルトで提供されています。
F# では元から提供されているユーザーが変更を加えられない組み込み型とは反対に、ユーザーが型を自由に作る ユーザー定義型 もあります。