Have you tried structured-haskell-mode[1]? There are video demonstrations here[2].
[1]: https://github.com/chrisdone/structured-haskell-mode
[2]: https://www.youtube.com/playlist?list=PLlzKKtH5TyE-R-k86na3b...
[1]: https://github.com/chrisdone/structured-haskell-mode
[2]: https://www.youtube.com/playlist?list=PLlzKKtH5TyE-R-k86na3b...
One good indenter (maybe with options to select how to style your code) would be better than three. I remember reading a blog post about how hard it is to indent Haskell automatically. It breaks my chain of thought though to have something automatic that works only most of the time. It means I routinely have to stop to fiddle with the editor to make it indent correctly.