Out of curiosity, did you use the Intero package with Emacs? (https://commercialhaskell.github.io/intero/).
Also consider Dante https://github.com/jyp/dante instead of Intero. Similar (not identical, see the README for a quick overview) feature set, doesn't require stack.
I'm definitely keeping an eye on it, and once they come up with better pre-existing project support, and possibly git integration, it will most definitely be a candidate for replacing atom or Emacs for me. The feel of it is just fantastic.