Object.create(null)

TypeError: Cannot convert object to primitive value

気がつけば Scala を書いていたので読んだものを列挙するよ

私が読んだものを読んだ順に列挙しているだけです. たぶん何の役にも立ちません.

Learn You a Haskell for Great Good!

Learn You a Haskell for Great Good!

Haskell の入門書. いや冗談ではなく. 代数的データ型とかモナドとか, Scala を書いていても役に立たなかったことがない.

英語版は上のリンクから無料で読めてお得です. 私は日本語版書籍の方を読みました.

すごいHaskellたのしく学ぼう!

すごいHaskellたのしく学ぼう!

Types and Programming

Types and Programming Languages

型システムの入門書. だから冗談ではなく. Scala の subtyping まわり色々あって最初見たときよくわからんって感じだったけど, これ読んだあとだと大体のことはそれはそうという気持ちになる.

日本語版書籍もあります.

型システム入門 −プログラミング言語と型の理論−

型システム入門 −プログラミング言語と型の理論−

  • 作者: Benjamin C. Pierce,住井英二郎,遠藤侑介,酒井政裕,今井敬吾,黒木裕介,今井宜洋,才川隆文,今井健男
  • 出版社/メーカー: オーム社
  • 発売日: 2013/03/26
  • メディア: 単行本(ソフトカバー)
  • クリック: 68回
  • この商品を含むブログ (11件) を見る

How to make ad-hoc polymorphism less ad hoc

https://homepages.inf.ed.ac.uk/wadler/topics/type-classes.html#class

型クラスを提唱した論文. implicit 引数で型クラス表現するのそれはそうという気持ちになる.

研修テキスト

github.com github.com

ここまで読んでくると素地ができていると思うので (本当に?), あとはツールの使い方や細かい文法を勉強すればだいたい書けるようになる (本当に?). どちらも似たようなことが書いてあるので片方読んでおけば良いと思う. 後者のほうが体裁が整っていて読みやすい感じ.

Hishidama's Scala Memo

Scalaメモ(Hishidama's Scala Memo)

このあたりは読んでおいてよかった:

API ドキュメント

www.scala-lang.org

それはそう.

おまけ: DOT

github.com

DOT は Scala 3 の理論的土台として設計されているけれど, Scala 2 のような言語をモデリングしようとした結果という感じなので全く関係がないというわけではないし, まあ適当に眺めると type member やら path-dependent types を導入しようとした気持ちがわかってよいのではないか (何目線?)