タグ

2019年8月23日のブックマーク (1件)

  • Monadとして抽象化すると何が嬉しいの? - あどけない話

    The Typeclassopediaには、以下のような文章があります。 結局、あらゆる誇大広告にもかかわらず、Monadは単なる型クラスに過ぎません。 また、The Trivial Monadでは、以下のように述べられています。 Haskell の Monad は型クラスの1つです。Haskell の型クラスは、複数の型で共通する API を定めます。だから、Monad という型クラスとは、型の集合に対する共通の API です。 共通の API とは、return と (>>=) のことです。 こう言われると、すぐに「その共通のAPIを使うと何が嬉しいの?」という疑問が湧くでしょう。もちろん、共通の API を使う嬉しさは、後から型を変えたときに、実装を変えなくてもいいことです。この記事では、その一例をお見せしましょう。 私が「Monad で実装してよかった」と感じたことがあるのはパーサ

    Monadとして抽象化すると何が嬉しいの? - あどけない話
    l-_-ll
    l-_-ll 2019/08/23
    "結局、あらゆる誇大広告にもかかわらず、Monadは単なる型クラスに過ぎません" "Monad という型クラスとは、型の集合に対する共通の API です" "return と (>>=) のこと"