I've spoken a little about the reason we couldn't use GHC among other things, at https://github.com/replit/repl.it/issues/43. In short, we need an interpreter rather than a compiler or a JIT, and we need the interpreter itself to run in the browser.
If it uses a JIT internally, it will produce x86 machine code, which is meaningless to us since we aren't emulating the whole machine. If it doesn't, then emscripting it should work.
[1] http://hackage.haskell.org/trac/ghc/wiki/Commentary/Compiler...