[Haskell-cafe] Monads aren't evil? I think they are.
Henning Thielemann
schlepptop at henning-thielemann.de
Mon Jan 12 15:25:28 EST 2009
Apfelmus, Heinrich schrieb:
> Ertugrul Soeylemez wrote:
>> Let me tell you that usually 90% of my code is
>> monadic and there is really nothing wrong with that. I use especially
>> State monads and StateT transformers very often, because they are
>> convenient and are just a clean combinator frontend to what you would do
>> manually without them: passing state.
>
> 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". But do you really need to
> pass state around? Or is there a more elegant solution, an abstraction
> that makes everything fall into place automatically? Passing state is a
> valid implementation tool, but it's not a design principle.
I collected some hints, on how to avoid at least the IO monad:
http://www.haskell.org/haskellwiki/Avoiding_IO
More information about the Haskell-Cafe
mailing list