LINUX.ORG.RU

Вышел GHC 7.4.1

 , ,


0

3

Вышел GHC 7.4.1 – новый релиз компилятора функционального языка программирования Haskell. Это первый релиз стабильной ветки 7.4, которая станет основой для будущих версий платформы Haskell. Предыдущая ветка 7.2 была скорее полигоном для новых идей.

Основные изменения по сравнению с веткой 7.0:

  • Класс типов Num более не наследуется от классов Eq и Show. Как следствие, многие функции получили явные ограничения Eq и Show.
  • Новая возможность Safe Haskell (-XSafe, -XTrustworthy, -XUnsafe). Позволяет ввести более строгую проверку безопасности типов во время компиляции, а также служит для компиляции и выполнения «ненадёжного» кода.
  • Новая возможность полиморфизм видов (kind polymorhphism) (-XPolyKinds).
  • Новая возможность виды-ограничения (constraint kinds) (-XConstraintKinds). Любой тип вида Constraint может использоваться как ограничение типа.
  • Теперь можно задавать любые объявления в строке ввода ghci.
  • Реализации профилирования и hpc (проверки покрытия кода программ) были объединены и капитально переработаны.
  • Теперь можно писать плагины для компилятора.
  • Поддержка DPH (Data Paralell Haskell) значительно улучшена.
  • Предварительная поддержка регистровой (registerised) компиляции для платформы ARM, использующей LLVM.

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

★★★

Проверено: maxcom ()

Ответ на: комментарий от malbolge

После эпичного танца с бубном собрал yesod на 7.4.1. А собрать yesod - это собрать значительный кусок хакейджа (под 100 пакетов). Правда пакеты связанные непосредственно с yesod'ом пришлось тянуть с житхаба. А с haskell-platform всёравно далеко не весь хакейдж компилится без правки сорцов и замены некоторых пакетов на репозитории.

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

Да, я понимаю, что сделали Оппенгеймер и Курчатов. Это наука, а все эти хаскели и прочие петоны - это симуляция научных достижений. На яве я пишу в 2 раза быстрее чем на хаскеле, и работает все это в 12 раз быстрее.

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

Раньше по-моему он назывался Glorious Haskell Compiler

Это GGHC - glorious glasgow, в следующий раз проверяй.

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

Уже убрали. Все равно есть LLVM бэкенд.

Там все равно нельзя было оттранслировать на x86, а сишный код скомпилить на arm

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

в моём уютном Линуксе

В жирном, дырявом, вечно страдающем переполнениями буферов и букетом других генетических заболеваний убогого недоязычка, слабанного на коленке Томпсоном и Ритчи, поделии Хаскелу не место.

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

ОС, например

Хм, ребята из Galois портировали GHC на Xen, например ;)

NICTA использовала хаскель в разработке своей версии L4.

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

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

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

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

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

Есть наука уровня Курчатова или Дарвина, а есть наука уровня безымянных рядовых собирателей гербариев. Последние тоже нужны, для систематизации стопяцот миллионов разнообразных видов. Из этих результатов потом умные люди какие-то выводы сделают. Большая наука - это Страуструп, а собиратели гербариев - это всякие С. П. Джонсы, Вадлеры и Одерски. Кто-то же должен и в червячках разбираться, в конце концов. Каждый участок спектра возможных языков должен быть исследован, для этого и существуют тысячи рядовых «ученых»-фофанов. А в практику пойдет только самое лучшее, созданное настоящими мастерами - такими как Страуструп, Хейлсберг и Вирт.

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

У меня установлено несколько сотен пакетов из Debian. Ни один из них на какацкеле, лиспе или схерне не написан.

anonymous ()

Вот только вчера накатил на систему ghc потыкать палочкой и нате, новая версия вышла. Пойду пересоберу мир.

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

Я бы скорее туда Ритчи и Кернигана воткнул... Кстати, а Хейлсберг чем знаменит? Компилятором паскаля? До-диезом?

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

«на яве», «быстрее» взаимоисключающие параграфы детектед.

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

Большая наука - это Страуструп

Еще кого-то приплюснуло на всю голову.

Кстати, а Хейлсберг чем знаменит?

Дык, дельфи :D

Я вот скорее удивляюсь за какие грехи местные птушники в эту компанию Вирта посадили.

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

У меня установлено

Уровень аргументации зашкаливаетЪ!

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

Ни один из них на какацкеле, лиспе или схерне не написан.

Другие люди в повседневной работе используют, например, CAS, или Emacs, или программы для синтеза речи.

Может ты школьник. А может просто не знаешь как определить язык, который используется пакетом. Одно, кстати, другого не исключает.

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

Ты вообще не понимаешь слово «наука»?

Велосипедостроительство - это лженаука. С которой следует бороться соответствующими методами.

У меня в обзорной части диссертации упомянуты почти двести источников. Почти все они - унылый копипаст друг друга. Выжать воду - останется меньше десятка приличных статей.

А потом удивляются, почему Фобос-Грунты падают :)

В ИТ сейчас происходит тоже самое. Опенсорс, в идеале, должен сокращать избыточные разработки, поскольку однажды созданное решение можно свободно использовать и адаптировать. Но раздутое ЧСВ мешает использовать и улучшать имеющееся, заставляя плодить новые ненужные сущности.

Судя по Вашему ответу, я нарвался на одного из избранных адептов функционального программирования, страдающего острой формой снобизма, которая проявляется в проведении резкой границы между «илитой» (к которым несомненно относятся лишь приверженцы ФП) и прочим «быдлом».

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

Кабал-интсал уже понимает ghc-7.4.1? Я тут пол дня есод с сотней зависимостей вручную по одному собирал :(

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

Велосипедостроительство - это лженаука.

Ты в курсе что такое System F? Ты в курсе, что SML, ОСaml и Haskell последние 20 с гаком лет занимаются вопросами ее практического применения? Сначала через Хиндли-Милнера, теперь через F-omega (GHC)?

Что никто бы и не ПОДУМАЛ бы создавать языки на MLTT, не будь бы наработок по System F?

Развивать, простите, что? Похороненный Алгол, который хоть как-то претендует на наличие хоть какого-то формализма в основе? Схему, которая, да, основана ... на нетипизированном лямбда-исчислении? Незабвенные поделки Вирта? Огороженный Коммон Лисп?

Так что не нужно кидаться какашками, «ученый» хренов. Особенно, если не шиша не понимаешь в данной области.

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

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

В Си полно большого количества легаси говна.

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

Кабал-интсал уже понимает ghc-7.4.1

Ну, у меня cabal-install ни разу не понимал текущий GHC... без долгой разъяснительной работы. И, видимо, с сабжем нужно будет не только манифест править, а еще и исходники. Не смотрел еще.

Только не путай cabal-install c Cabal... Это две СОВЕРШЕННО разные вещи. Cabal идет в составе GHC. cabal-install — удобная утилитка по выкачиванию зависимостей.

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

Да, я понимаю, что сделали Оппенгеймер и Курчатов. Это наука, а все эти хаскели и прочие петоны - это симуляция научных достижений. На яве я пишу в 2 раза быстрее чем на хаскеле, и работает все это в 12 раз быстрее.

А если я скажу, что у меня все с точностью до наоборот, то что?

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

Очень толсто, но все же.

Скорее всего, Страуструп наукой не занимается и не занимался вовсе. По крайней мере, все его заслуги по С++ никакого отношения к науке не имеют.

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

У меня установлено несколько сотен пакетов из Debian. Ни один из них на какацкеле, лиспе или схерне не написан.

какое всем дело до того, какие пакеты ты себе установил?

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

У меня в обзорной части диссертации упомянуты почти двести источников. Почти все они - унылый копипаст друг друга. Выжать воду - останется меньше десятка приличных статей.

Что в первую очередь свидетельствует о херовости твоей диссертации.

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

Велосипедостроительство - это лженаука. С которой следует бороться соответствующими методами.

А демагогия вообще не наука. Ну ка расскажи мне, откуда это скопипашен хаскель. Только пожалуйста без откровений «монада = массив».

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

Кстати. А практическое применение можно обозначить? Что нам дает параметрический полиморфизм?

Посмотри работы thesz'a — узнаешь :)

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

Что нам дает параметрический полиморфизм?

Возможность использовать функцию qsort. Только в няшной сишке она работает тупо кладя писю на проверку типов, но ведь это не беда, не правда ли? Компайл-тайм еррор, ран-тайм еррор, какая разница.

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

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

Если бы вы предложили конструктивный способ сокращения, позволяющий достоверно отделить зерна от плевел... А так, это еще одно нерелевантное «я щитаю» (ц).

Но раздутое ЧСВ мешает использовать и улучшать имеющееся, заставляя плодить новые ненужные сущности.

Используют, улучшают, плодят новые сущности, которые затем используют и улучшают. Что не так и как умудрились вы доказательно выделить среди всех новых «ненужные» сущности?

Может у вас и расстрельные списки имеются? :D

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

Что нам дает параметрический полиморфизм?

На этот вопрос здесь никто не ответит - будут куда-то отправлять по левым ссылкам, приводить заезжанные копипасты недоопределений, пошлют читать хаскел-вики, погрузятся в тонны не связанных с обсуждаемым предметом деталей, в конце концов отправят читать про зигохистоморфные препроморфизмы, катаморфизм, моноиды и прочее, а потом втупую перейдут на личности. К этому времени ты успеешь состариться, пытаясь узнать, зачем нужен «параметрический полиморфизм»... и наверняка потеряешь всякий интерес к программированию в пользу посещения лечащих врачей

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

Кабал-интсал уже понимает ghc-7.4.1? Я тут пол дня есод с сотней зависимостей вручную по одному собирал :(

Лучше бы собрал руками cabal-install. Быстрее, проще, и работает.

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

Джавистов спроси, что им дало введение дженериков. А это и есть параметрический полиморфизм, правда, ограниченный.

Или хотя бы на C++ без STL посмотри, какое это говно. Опять-таки, STL — пример эмуляции параметрического полиморфизма (хотя и негодными средствами).

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

Иногда поциентизм ЛОРовцев переходит всякие границы

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

Ну мало ли) Кстати у thesz'а довольно таки забавные статьи... Хотя я так и не понял, что такое параметрически полиморфизм, и какие он преимущества дает над, к примеру, перегрузкой методов в Java. Ну или же выделения базового класса и операций над ним, которые для всех подклассов будут иметь одинаковую реализацию.

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