2016-09-21から1日間の記事一覧
Scalaの書き方がけっこう良い。 trait Functor[F[_]] { def map[A,B](fa: F[A])(f: A => B) : F[B] }
Haskellと比べて、 class Functor f where fmap :: (a -> b) -> f a -> f b F[_] と書くので、fが型構成子だと明白にわかる。 ブラケットに型(や型構成子)パラメータを入れるので、総称性がハッキリ。 Haskell型変数 a, b は、いつのまにか勝手に入ってい…
関数型プログラミングとオブジェクト指向について、何か書く、かも - 檜山正幸のキマイラ飼育記 関連で少し調べてみたら、ウワーッ、随分とひどいことになってるんだな。 型述語解釈 http://www4.in.tum.de/~wenzelm/papers/constructive_classes.pdf : axio…