OCamlに手を出した話

Coderetret in Nagoya に行ってきたプログラミングの基礎 ((Computer Science Library))が紹介されていたので速攻でポチって、今日届いたの3時間くらいで24章中の14章を読んだのでそこまでの感想。

基礎という名前と裏腹に使っている言語はOCaml。強い静的型付けと、関数型であることが特徴の言語だ。

強い静的型付けっていうのを簡単に説明すると、1+1.0ができない。つまり、int+float は他の多くの言語では、 int+float +> float+float に変換され計算されるが、OCamlではしない。これはより厳密にあつかえるとも言えるし、面倒臭いともいえる。

その厳密さに、はじめは慣れないかもしれないが、インタプリタが大概の間違いを指摘してくれる。

本の感想(14章まで)

はじめの方は強い静的型付けに苦労させられた。なにせ +と+.でさえ違うのだから読みにくい。
4章”関数の定義”で、簡単にテストの話が入る。大抵の入門書だとテストの話は中盤以降にまとめてされるか、そもそも無い場合が多い。よい書き方がだと思った。
関数でパターンマッチやリスト、再帰が簡単にかける。
型推論が強力。OCamlでは、型を書く必要はない。インタプリタが勝手に推論して決めてくれる。
多相Variantというものがあって非常に便利


関数型言語を学ぶにはいい本だと思います。