Option Монада - отличный выразительный способ справиться с чем-то или чем-либо в Скале. Но что, если нужно регистрировать сообщение, когда «ничего» не происходит? Согласно документации API Scala, Тип
instance Monad (Either a) where
return = Left
fail = Right
Left x >>= f = f x
Right x >>= _ = Right x
этот код фраг в 'baby.hs' вызвало ужасную ошибку компиляции: Prelude> :l bab