??演算子
>へぇ、というか別に珍しいものでもない気が、と思うけど、そんなものが用意されているとはなぁ。
>
>Haskell でやる場合はどうするか、 Maybe とかモナドとかいろいろ調べて mplus を使えば行けるのか、とかいろいろやってみた末の結論は、
>
>flip fromMaybe で万全
>
>ということでした(むろん、遅延評価言語なので foo が Just なら bar は評価されないし)。
>
>(??) :: Maybe a -> a -> a
(??) = flip fromMaybe
infixr 9 ?? > >Maybe をモナドとして考えて >>= を使うとなると、「Just のあいだはどんどん評価していくけど途中で Nothing になったら評価はしないで最終的に値が Nothing」ということなので意味が逆なのですね。それでいろいろ考えてしまったよ。 >
(??) = flip fromMaybe
infixr 9 ?? > >Maybe をモナドとして考えて >>= を使うとなると、「Just のあいだはどんどん評価していくけど途中で Nothing になったら評価はしないで最終的に値が Nothing」ということなので意味が逆なのですね。それでいろいろ考えてしまったよ。 >