Drkcore

13 10 2012 Haskell Tweet

Haskellの入門書に型推論の話題が含まれていないのはなんでだろう?

最近やったことを振り返ってみると

  • ランク2多相とかランクN多相を理解する
  • Haskellの関数従属とは「ある型が決まれば別の型が一意に決まる」という依存関係のこと
  • Haskellの一般化代数データ型(GADT)
  • HaskellのType Familiesがわからんよ(改めわかった)

型推論のための知識ばかりじゃないかと。メタな知識がないとまともなコード書けないってことか、コード書くのには必要ない余計な知識を詰め込んだのか(多分前者だと思うけど)。

Haskell の型システムは2つの重要 な特性を発揮します。ひとつめは、正しく型付けされた式はいづれも唯一の主型 (これについては下で説明します)を持つことが保証されるということです。ふた つめはこの主型は自動的に推論できるものであるということです(§4.1.3)。Cのように単 態型を用いる言語と比較すると、多相性のある言語では表現力がアップしている のがわかると思います。型推論機構は、プログラマが型の問題で頭を悩ますこと を軽減してくれます。やさしい Haskell 入門 (バージョン 98 )

結局のところ、型推論機構の知識がないとプログラマが型の問題で頭を悩ますだけで、Haskellの型推論機構の恩恵を受けられないよってことじゃないのかな?と思うのだけど、なぜ入門書にそういう話題が含まれていないのだろうと思った。

あちこち探しまわって断片をかき集めてちょっとづつ理解していくのはちょっとしんどいかも。

僕は楽しかったけど。

ProductName Basic Category Theory for Computer Scientists (Foundations of Computing)
Benjamin C. Pierce
The MIT Press / 2302円 ( 1991-08-07 )


About

  • もう5年目(wishlistありマス♡)
  • 最近はPythonとDeepLearning
  • 日本酒自粛中
  • ドラムンベースからミニマルまで
  • ポケモンGOゆるめ

Tag

Python Deep Learning javascript chemoinformatics Emacs sake and more...

Ad

© kzfm 2003-2021