10月17日23時24分 スライドを作り始める
10月17日23時24分 スライドを作り始める
時間がない…
【注意】
このスライドには正確性に欠ける表
現が含まれている恐れがあります
型なの?クラスなの?ハッキリしろ!
10月17日23時30分 スライドの内容を考えながら寝る
型クラスとは
“型の特徴を定義済みの型に対して拡張する仕組み”
10月18日8時0分 スライド作成を再開する
型クラスとは(contd.)
“型の特徴を定義済みの型に対して拡張する仕組み”
らしいです.
型クラスとは(contd.)
“型の特徴を定義済みの型に対して拡張する仕組み”
型クラスとは(contd.)
特徴?
例えばOrdered…順序付けできる
OOPで言うインターフェイス的な
型クラスとは(contd.)
“型の特徴を定義済みの型に対して拡張する仕組み”
型クラスとは(contd.)
定義済みの型に対して拡張?
言語によって実装方法は違う
Haskell…言語レベルで実現
Scala…Pimp my library(implicit)で型クラスインスタンスを
引き回して実現
(型クラスではないが).Net…拡張メソッド
10月18日8時16分 スライド一時中断
結局のところ
具体例
Ordered …順序付けできる
Equal …等価性を定義できる
Monoid …2項演算可能 && 零元がある
Functor …mapできる
いろんな性質に用いられる. 一つの具象クラスに複数実
装も可能
10月18日18時4分 スライド作成再開
結局のところ(contd.)
関数型におけるインターフェース
基本的に実装されたものを利用するだけなので, とりあ
えずは深く考えなくていいかも
この手の話に興味がなくもない方
この手の話に興味がなくもない方
(誰とは言わないけど某はるさめとか)
この手の話に興味がなくもない方
http://fpscala-osaka.connpass.com/event/21617/
10月18日18時35分 スライド完成

OUCC LT会2