Привет, ЛОР!
10 марта вышел релиз самого популярного компилятора языка Haskell — GHC 9.6.1. С момента предыдущего мажорного выпуска 9.4.1 прошло более 10 месяцев. GHC на данный момент является эталонной реализацией языка и распространяется под модифицированной лицензией BSD3.
Основные изменения в выпуске:
- Добавлена начальная поддержка компиляции в JavaScript и WebAssembly. Поддержка JavaScript основана на предыдущих наработках в рамках GHCJS.
- Снижены задержки в работе неперемещающего сборщика мусора.
- Ошибкам компиляции присвоены уникальные коды, например GHC-12345, для упрощения поиска документации и возможных решений.
- Добавлен новый способ объявления типов
type data
, позволяющий создавать типы без задания соответствующих им значений. - Убраны ограничения для названий полей при использовании OverloadedLabels (см. Unrestricted OverloadLabels).
- Интерпретатор GHCi теперь корректно обрабатывает директивы {-# OPTIONS_GHC … #-} и {-# LANGUAGE … #-}.
- В среду исполнения добавлена поддержка базовых операций для использования разграниченных продолжений (delimited continuations), что позволит серьёзно улучшить производительность библиотек, реализующих алгебраические эффекты, таких как Polysemy.
- В базовой библиотеке реализована поддерка стандарта Unicode 15.0.
- Добавлена поддержка компиляции с LLVM 15.
В дополнение к этому, вышла версия GHC 9.2.7 с исправлениями багов в ветке 9.2.
>>> Подробности