e3 ghc haskel