エントリーの編集

エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
記事へのコメント1件
- 注目コメント
- 新着コメント
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています

- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
Proof with Scala
※今回はScala2.10.0-M3を使います。 ある型クラスのインスタンスを定義するとき、何らかの規則を満たす... ※今回はScala2.10.0-M3を使います。 ある型クラスのインスタンスを定義するとき、何らかの規則を満たす必要があるときがあります。 例えばMonadだとモナド則。 bind,returnを定義するときに、以下のものが満たされないといけません。 bind (return a) f = f a bind m return = m bind (bind m f) g = bind m (fun x => bind (f x) g) しかし、Scalazの型クラスなどはモナド則を満たしているかどうかを検査してくれるわけではありません。 そこで、コンパイル時に規則を満たしているかどうかを検査するように型クラスを定義してみます。 Monoidを例に考えます。 ScalazのMonoidの定義と違うところは、ある型のサブクラスも許容しているところです。 Monoidは以下のものを満たす必要があり
2014/10/31 リンク