Как обновить платформу Haskell

У меня есть платформа Haskell Platform 2012.4, установленная в Windows. Я хотел бы попробовать новые расширения в GHC 7.6.2. Похоже, что загрузка GHC 7.6.2 x86_64 не включает установщика и является только двоичным файлом. Каков правильный способ установить последнюю версию и установить по умолчанию для построения проектов Haskell? Спасибо.

Ответ 1

Если вы загружаете GHC, вы получаете GHC и крошечную библиотеку. Если вы загружаете платформу Haskell, вы получаете GHC плюс гораздо большую коллекцию библиотек. Однако платформа Haskell обновляется нечасто, поэтому вы получите более старую версию GHC.

Если вы спрашиваете: "Как мне установить платформу Haskell, а затем заставить ее работать с более новым GHC?", тогда ответ "вы не делаете". Библиотеки Haskell должны быть скомпилированы для конкретной версии GHC, которую вы используете.

В основном у вас есть два варианта:

  • Используйте платформу Haskell вместе с версией GHC, которую она предоставляет.
  • Используйте последний GHC и скомпилируйте любые библиотеки, которые вы хотите вручную.

В Linux это не так уж плохо, но библиотеки Haskell, которые привязаны к внешнему C-коду, как правило, неудобно строить на Windows. (Такие вещи, как OpenGL, zlib и т.д.). Пакеты, содержащие 100% ванильный код Haskell, легко компилируются в любой системе.

Ответ 2

Я не сделал этого, и я на работе, поэтому я не могу проверить его, но смотрю документы GHC Я думаю, вы можете использовать флаг --with-compiler=path, чтобы выбрать, какую версию GHC использовать?

См. также этот вопрос, связанный с использованием cabal с установленными несколькими версиями ghc. Я бы предположил, что вы, вероятно, захотите использовать cabal-dev или что-то в песочнице, иначе ваша база данных пакетов может стать беспорядком.

EDIT: по умолчанию я думаю, что вы можете установить это в файле конфигурации кэбала. См. Комментарии к принятому ответу в этом вопросе, который я связал.