[Haskell-cafe] Re: Monads aren't evil? I think they are.
Henning Thielemann
schlepptop at henning-thielemann.de
Mon Jan 12 15:28:48 EST 2009
Ertugrul Soeylemez schrieb:
> "Apfelmus, Heinrich" <apfelmus at quantentunnel.de> wrote:
>
>> The insistence on avoiding monads by experienced Haskellers, in
>> particular on avoiding the IO monad, is motivated by the quest for
>> elegance.
>>
>> The IO and other monads make it easy to fall back to imperative
>> programming patterns to "get the job done". [...]
>
> Often, the monadic solution _is_ the elegant solution. Please don't
> confuse monads with impure operations. I use the monadic properties of
> lists, often together with monad transformers, to find elegant
> solutions. As long as you're not abusing monads to program
> imperatively, I think, they are an excellent and elegant structure.
I have seen several libraries where all functions of a monad have the
monadic result (), e.g. Binary.Put and other writing functions. This is
a clear indicator, that the Monad instance is artificial and was only
chosen because of the 'do' notation.
More information about the Haskell-Cafe
mailing list