関数型プログラミング言語Haskell Part15
■ このスレッドは過去ログ倉庫に格納されています
0781デフォルトの名無しさん
2011/09/24(土) 12:59:17.57(>>=) :: Monad m => m a -> (a -> m b) -> m b
の第二引数の最初の引数が m で包まれてないので
>>= を実装するために m a から a を取り出せる必要がある
この条件が Arrow に比べてできないことが増えてる
これがMonadでは入力がパラメタ化されていないということ
>>780
MonadはArrowの特殊な場合
一般には、ArrowはMonadではないってところが重要
Monadになっている時点でArrowの能力全部を使っていないはず
Programming with Arrows では、Monadでは表現できなくてArrowでは表現可能なストリームの例がある
■ このスレッドは過去ログ倉庫に格納されています