LINUX.ORG.RU

Glasgow Haskell Compiler 9.4.1

 , ,

Glasgow Haskell Compiler 9.4.1

3

4

Привет, ЛОР!

7 августа вышла новая версия Glasgow Haskell Compiler 9.4.1. На данный момент GHC является самым активно развиваемым компилятором для Haskell.

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

  • Полностью переписана поддержка ОС Windows. GHC перешёл на использование утилит из LLVM вместо MinGW.
  • Новый синтаксис \cases, аналогичный \case из LambdaCase, и позволяющий проводить сравнение с образцом более чем одного аргумента.
  • Улучшения в инфраструктуре плагинов компилятора: добавлены новый тип defaulting plugins и возможность для плагинов переписывать семейства типов.
  • Новый режим профилирования кода -fprof-late. Этот режим гораздо меньше конфликтует с различными оптимизациями кода, применяемыми компилятором.
  • Новые оптимизации кода и улучшенный анализ производительности кода компилятором.
  • Частично переписан код вывода ошибок сборки. Теперь возможен вывод ошибок и предупреждений в структурированной форме, что позволит улучшить взаимодействие со сторонними программами, такими как IDE и редакторы.
  • Улучшение поддержки проектов, состоящих из множества отдельных пакетов.
  • Возвращена поддержка «глубокого подчинения» (deep subsumption), которая была удалена в GHC 9.0.
  • Значительные улучшения в скорости сборки и потреблении памяти компилятором.

В дополнении к этому, вышла новая версия в ветке 9.2 – GHC 9.2.4, в которой также возвращена поддержка deep subsumption и исправлены многие баги.

Компилятор распространяется по модифицированной лицензии BSD.

>>> Release Notes

★★★★★

Проверено: hobbit ()
Последнее исправление: hobbit (всего исправлений: 2)

Полностью переписана поддержка ОС Windows. GHC перешёл на использование утилит из LLVM вместо MinGW

20 лет ждал!!!

Частично переписан код вывода ошибок сборки. Теперь возможен вывод ошибок и предупреждений в структурированной форме, что позволит улучшить взаимодействие со сторонними программами, такими как IDE и редакторы.

Наконец-то.

Oldboy
()

А haskell умеет работать с БД? Я имею ввиду это обычный язык как С++ или он узконапрален на что-то и там половина функций не работает?

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

LLVM вышел без малого 19 лет назад ._>

Ну так в GHC он давно бэкендом есть. Просто на венду всем слегка насрать :)

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

к словам не придираемся. Тут главное, что в LLVM более прозрачно всё, а это для такого ЯП, как Haskell, IMO, самое то.

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

Это когда тебя глубоко подчиняют.

На самом деле, это фишка в тайпчекере. Можешь вот это видео с лысым посмотреть, он там неплохо всё объяснил: https://www.youtube.com/watch?v=XMnXbBRg-B0.

hateyoufeel ★★★★★
() автор топика
Последнее исправление: hateyoufeel (всего исправлений: 2)
Ответ на: комментарий от Oldboy

Тут главное, что в LLVM более прозрачно всё

В данном случае, речь идёт об использовании ассемблера и линкера из LLVM на венде. К самому LLVM это всё отношения не имеет.

hateyoufeel ★★★★★
() автор топика
Последнее исправление: hateyoufeel (всего исправлений: 1)
Ответ на: комментарий от no-dashi-v2

переходить

В дополнение к радужному разнощерстью нариков и юродивых в субкультуре функциональщины всегда присутствовали и мазохисты.

token_polyak ★★★★★
()
Последнее исправление: token_polyak (всего исправлений: 2)
Ответ на: комментарий от token_polyak

В дополнение к радужному разнощерстью нариков и юродивых в субкультуре функциональщины всегда присутствовали и мазохисты

Как и в «субкультуре» императивщиков, в чём твой поинт?

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

Там только одна реализация? Или ещё где-то есть база пришельцев?

Сейчас – да. Раньше было несколько, но их разрабы перешли пилить GHC. В итоге выжил сильнейший.

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

ТС вроде за деньги прогает.

Я тебе более того скажу: тут ещё мои коллеги сидят! Но они, к счастью, не знают, что я – это я.

Есть ещё конторы, которые на Haskell специализируются/специализировались — те же Serokell, Tweag.

Хацкелловых контор разного размера достаточно много, на самом деле. Просто пилят тихо и не отсвечивают, а в опенсорц только библиотеки выкладывают под всякими BSD/MIT лицензиями. Из крупных проектов – только тулинг для разработки и около. Такой вот язычок для своих со своей тусовкой.

Зато работу искать удобно: пишешь в хацкелловый чатег, discourse или рассылку и ХОППА у кого-нибудь да есть классная вакансия или две.

hateyoufeel ★★★★★
() автор топика
Последнее исправление: hateyoufeel (всего исправлений: 1)
Ответ на: комментарий от hateyoufeel

Но они, к счастью, не знают, что я – это я.

А вдруг знают, но притворяются, что нет?

Хацкелловых контор разного размера достаточно много, на самом деле.

Ну да, я просто назвал самые (мне) известные / первые, которые в голову пришли.

Зато работу искать удобно: пишешь в хацкелловый чатег, discourse или рассылку и ХОППА у кого-нибудь да есть классная вакансия или две.

Удобно, когда на рынке труда спрос превышает предложение. Мне вон стабильно каждую неделю стучатся рекрутеры, хотя я сам работы не ищу.

theNamelessOne ★★★★★
()
Последнее исправление: theNamelessOne (всего исправлений: 2)
Ответ на: комментарий от theNamelessOne

А вдруг знают, но притворяются, что нет?

Вряд ли. Я не палюсь!

Удобно, когда на рынке труда спрос превышает предложение. Мне вон стабильно каждую неделю стучатся рекрутеры, хотя я сам работы не ищу.

Мне б тоже стучались, наверное, но моего резюме не в публичном доступе. Мы сами вам позвоним (c).

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

общий.

Хорошо, а как вообще сделать оценку кто пишет на нём и сколько программ есть? Посмотреть статистику проектов на GitHub и SourceForge?

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

Хорошо, а как вообще сделать оценку кто пишет на нём и сколько программ есть?

Программ мало. Библиотек много. Смотри мой коммент выше.

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

он узконапрален на что-то и там половина функций не работает

haskell это про любителей говорить умные слова и доминировать над неучами которые не знают, что такое монады.

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

haskell это про любителей говорить умные слова и доминировать над неучами которые не знают, что такое монады

А разве такие ещё остались? По-моему уже все давно знают, что монады — это буррито.

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

Вообще-то странно, если учесть, что Пейтон-Джонс — еще и сотрудник Microsoft Research, И, вроде как, я слышал от академического сообщества, что есть какие-то гранты от них для университета Глазго, где вся эта банда хасквеллянтов окопалась :)

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

Вообще-то странно, если учесть, что Пейтон-Джонс — еще и сотрудник Microsoft Research

MS Research вроде как немного отдельно от самого MS. Это такая непонятная тусовка, в которую закидывают деньги, а оттуда периодически вылезают ништяки. Плюс, на кой хрен оно на венде-то нужно?

Алсо

From 1998 to 2021 he worked as a researcher at Microsoft Research in Cambridge, England.[7][9][10] Since 2021 has he worked at Epic Games as an engineering fellow.[11]

hateyoufeel ★★★★★
() автор топика
Последнее исправление: hateyoufeel (всего исправлений: 1)

Ну наконец! [нинужна][/нинужна] может [нинужна][/нинужна], я джва года этого джвал!

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

Ну значит мои сведения в 21м году устарели, что не удивительно, они более ранние. Занимается человек ресерчем в собственное удовольствие, ну и порадуемся, что ему повезло.

Плюс, на кой хрен оно на венде-то нужно?

Ну, видимо, на соседний от того, на который им F# нужен :) А может и на тот же...

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

Ну, видимо, на соседний от того, на который им F# нужен :) А может и на тот же…

Да это фигня. SPJ на самом деле очень много над Excel работал, превратил недоязычок формул в подобие APL. Он туда аж ЛЯМБДУ впердолил!

Кстати, все кого я знаю плюются от F# и говорят, что проще на C# в функциональном стиле писать, чем использовать этот огрызок от окамла. Не знаю, насколько это правда, потому что сам ни то ни другое не тыкал ни разу.

hateyoufeel ★★★★★
() автор топика
Последнее исправление: hateyoufeel (всего исправлений: 2)

Поздравления всем кого касается!

AndreyKl ★★★★★
()

deep subsumption

Что это за порнография такая?

zabbal ★★★★★
()

Как однажды заметил в ЖЖ основатель журнала «Практика функционального программирования» товарищ lionet, «Хаскель – это не затем, чтобы хорошо работало, а затем чтобы хорошо др0чилось». Жаль что не могу найти оригинал комментария: было где-то в блоге у tonsky, но видимо стёрли.

ps. http://fprog.ru/planet/ склеил ласты.

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

Понятно, похоже прям на Delphi - много кто пишет, а вакансий нет… :D

Да не, вакансий хватает.

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

GHC самый распространенный, используемый и хорошо изученный. А так реализаций есть штук восемь. Но вот базы ли они пришельцев или мелкие космодесанты сказать трудно.

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

По моим ощущениям, вакансий чуть больше, чем претендентов из тех, у которых хаскель с пальцев стекает. Меня раза два звали, но я не считаю себя знатоком языка на рабочем уровне.

gns ★★★★★
()
Последнее исправление: gns (всего исправлений: 1)
Ответ на: комментарий от hateyoufeel

Кстати, все кого я знаю плюются от F# и говорят, что проще на C# в функциональном стиле писать, чем использовать этот огрызок от окамла. Не знаю, насколько это правда, потому что сам ни то ни другое не тыкал ни разу.

Окамл я тыкал просто из интереса, написал на нем что-то в духе «100 задач по языку NNN» не сложнее, чем реализация машины Тьюринга :) и с тех пор недоумеваю, нахрена нужен F#. Окамл очень быстрый (для функционального языка, сравним с императивщиной), может поэтому его и реализовали в ДотНете... Лет 20 назад он считался какой-то разумной альтернативой, потом «взлетел» Erlang и про Окамл забыли.

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

Все про них щебечут. Потому что сейчас async/await в почти любом языке имеет монадический интерфейс.

и с тех пор недоумеваю, нахрена нужен F#.

Потому что у окамла была куча жирных проблем, и некоторые из них до сих пор остаются. Что уж говорить, поддержку тредов добавили вот только несколько месяцев назад. До этого там как в пистоне был ЖЫРНЫЙ глобальный лок в рантайме.

hateyoufeel ★★★★★
() автор топика
Последнее исправление: hateyoufeel (всего исправлений: 1)
Ответ на: комментарий от hateyoufeel

Ну типатого. Ну в начале 2000х все с жЫрным глобальным локом жили, Потом в Кваке ботов на Lua научились писать :)

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