Por que os efeitos colaterais são modelados como mônadas em Haskell?
Alguém poderia dar algumas dicas sobre por que os cálculos impuros em Haskell são modelados como mônadas?
Quero dizer, a mônada é apenas uma interface com 4 operações, então qual foi o motivo para modelar os efeitos colaterais nela?