GHCi - это очень простой REPL, который читает выражения и печатает результаты (обычно) и может быть представлен в виде интерактивного do
выражения. Проблема с разрешением общих конструкций Haskell состоит в том, (а) как объединить их в уже загруженную программу, (б) что делать с ними при перезагрузке или других действиях, которые сбрасывают состояние REPL. Кроме того, есть вопросы о том, что делать, когда определение конфликтует с чем-то уже определенным. И еще один простой факт: текущая реализация - это просто средство оценки выражений, тогда как компиляция нового кода более сложна.