ghc-mod provides editors/IDEs with support for Haskell compiler features. It supports both Cabal and Stack based projects and integrations exist for Emacs, Vim, Atom, IntelliJ and VSCode. We provide two modes of operation for frontends: interactive and single shot mode. The former is accessed by calling $ ghc-mod legacy-interactive. This will sit and wait for you to type a command, exiting when an empty line is entered. Interactive mode is pretty much always faster than single shot mode, since it gives ghc-mod the ability to cache the compiler session between commands. On the other hand, it needs more memory because it keeps these things cached.