Представлен выпуск GHC 9.4.6 (Glasgow Haskell Compiler), компилятора для функционального языка программирования Haskell, обеспечивающего эффективное распараллеливание вычислений и поддерживающего программную транзакционную память (STM, Software Transactional Memory). В компиляторе реализована полная поддержка спецификации Haskell 2010 и многочисленных языковых расширений.
Компилятор поддерживает генерацию исполняемых файлов с машинным кодом, формирование байткода или трансляцию в исходные тексты на языке C. Код проекта написан на языке Haskell и распространяется под лиценизей BSD.
Основные изменения в этом выпуске:
исправление ошибок для упрощения выражений, исправление аварийных завершений компилятора, циклов и неправильной кодогенерации.
исправление ошибок проверки типов, включая семейства экземпляров newtype, улучшение работы сравнения типов и работа над ошибками по представлением по умолчанию переменных с полиморфными типами.
исправления кодогенерации, в частности для архитектуры aarch64, включая увеличение числа барьеров памяти для операций чтения массивов.
исправления ошибок сборки под Windows, улучшение надёжности выключения менеджера IO и исправление ошибок для RTS-линковщика под Windows.
исправление ошибок для корректного учёта выделения мутаторов и неперемещающего сборщика мусора.
предотвращение некоторых ошибок сегментации связанных с закреплёнными выделениями.
Источник: OpenNET.