LINUX.ORG.RU

GHC 8.10.1

 , ,


2

4

Состоялся очередной релиз компилятора Glasgow Haskell Compiler.

Среди изменений:

  • Новые расширения языка UnliftedNewtypes, StandaloneKindSignatures и ImportQualifiedPost.
  • Изменения в кодогенерации, включая более агрессивную специализацию кода, новый анализатор циклов, оптимизацию работы с массивами и тэггирование указателей для больших типов данных.
  • Новая команда интерпретатора :instances, показывающая доступные инстансы классов для заданного типа.
  • Улучшения в работе встраиваемого профайлера кода.
  • И, вишенкой на торте, новый сборщик мусора, отличающийся уменьшенным временем задержек, сборкой мусора без копирования данных и возможностью параллельной сборки мусора и работы кода. Для включения нового сборщика мусора нужно скомпилировать код новой версией компилятора и запустить с параметрами +RTS -xn.

Подробнее про новый сборщик мусора можно прочитать здесь.

>>> Скачать

>>> Подробности

★★★★★

Проверено: Satori ()
Последнее исправление: Virtuos86 (всего исправлений: 4)

Ничего интересного же, как обычно. Вот если бы перешли на энергичные вычисления, то этим можно было бы начать пользоваться.

anonymous
()
Ответ на: комментарий от anonymous

Вот если бы перешли на энергичные вычисления, то этим можно было бы начать пользоваться.

default-extensions: Strict в cabal, и будут вам энергичные вычисления. В рамках одного пакета, правда, но уже хоть что-то.

Laz ★★★★★
()
Ответ на: комментарий от Virtuos86

Новый GC это может быть очень критично. В свое время, мы с коллегами поели говна на скорости разбора JSON в хачкеле. Мб с новым GC станет получше.

kirk_johnson ★☆
()
Ответ на: комментарий от Virtuos86

Честно говоря, на ЛОРе не всегда понятно, шутит человек или же он просто тупой. Я не про тебя лично сейчас, если что :)

hateyoufeel ★★★★★
() автор топика
Ответ на: комментарий от kirk_johnson

Уже поздно. Но, вообще, я эту ссылку из поста про GC взял, на который ссылка в новости.

hateyoufeel ★★★★★
() автор топика
Ответ на: комментарий от hateyoufeel

Лол. Если по сабжу, то как-то странно, что такой сборщик не запилила до пор команда разработчиков, если старый доставляет проблемы на реальных задачах.

Virtuos86 ★★★★★
()
Ответ на: комментарий от Virtuos86

Как раз таки они его и запилили.

Но, вообще, старый доставляет геморрой далеко не на всех задачах. Если ты на хацкелле пишешь бэкенд для сайта, ты даже не заметишь проблем.

hateyoufeel ★★★★★
() автор топика

Интересно стату по GC глянуть в противоположность stop the world-у, когда будет.

kostyarin_ ★★
()

Они чет зачастили недавно с 865 все перебирались на 881, а потом на 883, а теперь вот это. Опять новый lts в stack ждать?

abcq ★★
()
Ответ на: комментарий от Cirno

Выкормыши MS Research если быть совсем точным :D

abcq ★★
()
Ответ на: комментарий от kirk_johnson

в джаве их ворох на разные ситуации внутри вм, ребята реализовали разные стратегии сборки мусора.

abcq ★★
()
Ответ на: комментарий от anonymous

Вам лишь бы энергичные вычисления, нужно больше лениться по утрам и вечерам, а то ересь какая-то ;)

abcq ★★
()
Ответ на: комментарий от kirk_johnson

Весь мир умиляется попыткам джава-кодеров выжать хоть какую-то приличную эффективность, перебирая и настраивая GC.

Срыв покровов: хаскеллисты - те же джава-кодеры.

anonymous
()
Ответ на: комментарий от hateyoufeel

хацкелл

бэкенд для сайта

Это какой-то позор. (с)

anonymous
()
Ответ на: комментарий от hateyoufeel

Я слышал, в Rust сборщик был настолько омерзителен, что его выпилили.

И сделали очень хорошее дело. Основа языка Rust оказалась настолько хороша, что авторы очень быстро сориентировались, что сборщик мусора там просто не нужен, лишняя сущность.

По поводу Haskell. У меня были вопросы к старому сборщику мусора. Он вел себя ужасно на многоядерных компьютерах (все ли языки с GC так себя ведут?). Жаль, полностью протестировать новый сборщик не смогу, потому что мне нужен один пакет, который уже версии две-три GHC, как не развивают, и этот пакет просто не заводится для новых GHC (я про distributed-process).

dave ★★★★★
()
Ответ на: комментарий от anonymous

А как он себя ведет на современном 16-ядерном компьютере (скажем, честных 8 ядер + виртуализация или как ее там у райзена)?

dave ★★★★★
()

Лучший компилятор стал ещё лучше!

Nexmean
()
Ответ на: комментарий от anonymous

Вот ты ерничаешь, а между тем в том же C++ монады вполне себе пишутся. Правда, приходится дописывать тип в шаблонах, но это работает. Даже монада продолжений. (Если что, под моим «личным» NDA, так что без пруфов)

dave ★★★★★
()
Ответ на: комментарий от kirk_johnson

мы с коллегами поели говна

голый Кирк, ты так возбуждаешь меня. вдуть бы тебе.

Владимир

anonymous
()
Ответ на: комментарий от dave

Вот ты ерничаешь, а между тем в том же C++ монады вполне себе пишутся. Правда, приходится дописывать тип в шаблонах, но это работает. Даже монада продолжений. (Если что, под моим «личным» NDA, так что без пруфов)

Я вот продакшн код на пистоне с монадами видел. До сих пор хочу автору ноги отрезать.

hateyoufeel ★★★★★
() автор топика
Ответ на: комментарий от hateyoufeel

До сих пор хочу автору ноги отрезать.

монада и комбинаторы на ней основаные - божественный свет в темном и тусклом мире оопе, хуепе и прочей около-ентерпрайзной хуебени.

когда то подобные тебе долбойобики сожгли джордано бруно.

anonymous
()
Ответ на: комментарий от anonymous

монада и комбинаторы на ней основаные - божественный свет в темном и тусклом мире оопе, хуепе и прочей около-ентерпрайзной хуебени.

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

hateyoufeel ★★★★★
() автор топика
Ответ на: комментарий от anonymous

Да нет, монада и комбинаторы это жуткая срань. В Haskell этим можно пользоваться только благодаря эффектам. MTL это такой кошмар, что даже питон лучше.

kirk_johnson ★☆
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.