LINUX.ORG.RU

Языку Haskell исполнился 21 год

 ,


0

3

1 апреля 1990 года был опубликован документ под названием «The Haskell Report», а также первый стабильный релиз того самого ЯП для штангистов.

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



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

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

> То есть ты их все-таки смог сравнить?

легко - разница в первой букве

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

> Для быстрого прототипирования и мат. онанизма

Точно, Хаскель нужен для того, чтобы сляпать код на выброс и почесать чсв.

Как только задача становится подальше от факториалов и поближе к реальности, сразу же ищут биндинги к C/C++ библиотекам.

kamre ★★★
()

> Языку Haskell исполнился 21 год

Таким образом, Haskell теперь на 50% старше чем среднестатистический ЛОРовский анонимный говномет.

rtvd ★★★★★
()

Чем унылее изыг, тем унылее говнотрэд с его обсуждением....
Давайте про С++ с его говнобиблиотеками?

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

Ну так, может, эффективно решите мне проблему разделения основного и сквозного функционала без макросов?

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

> а для быстрого прототипирования тут уже подсказывали, лучше всего подходит delphi

Раскидывания контролов по формочкам с прототипизированием не путайте.

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

Мне хватает Пролога и Лиспа) Если я захочу экстремальных ощущений, всегда есть APL!

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

Писать под веб на хаскеле хаскеля ради — это фанбоизм чистой воды.

Расскажи это авторам yesod, happstack, snap, hoh и др.


А давай будем отталкиваться от земли и фактов, а не от «авторов lol»?
Напомню: >X-Powered-By: PHP/5.2.6-1
Никаких тебе happystack и snap

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

> Нет, может быть и знают, но пытаются это упорно скрывать

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

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

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

>Хаскелисты упорно стараются скрывать работу с памятью и командами процессора за ширмой рекурсий, списков, монад, функторов. Да, может быть они при этом не допускают ошибок вроде выходов за пределы массива, но здесь мы получаем инуые проблемы - например, сложность в реализации последовательного выполнения действий (что-то куда-то надо оборачивать, и т. д.), а это — проигрыш в производительности.

расскажи мне про реализацию памяти лисп-машины. то-то же. знатоки нашлись, не фоннейманом единым.

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

> я понимаю, что такого компелятора сегодня нет, и завтра не предвидится, но будем на надеется что появятся в будущем.

...и напишет его школота, даже не умеющая правильно написать слово «компилятор».

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

> Тогда же появился и лисп. Функциональный. Только почему-то пришлось создавать оптимизированные для него лисп-машины, видать, не последнюю роль в этом сыграла его (лиспа) производительность. Но они не получили широкого распространения.

здесь проблема не в производительности лиспа, а в слабой производительности фон-неймановской архитектуры. слабое место фон-арх. - шина данных. в лисп машинах эту проблему решили.

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

> Монады - это такой способ замести проблемы под ковёр, вместо их решения.

FIXED

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

>> да в С++ очень просто выстрелить себе в ногу... совсем простой язык

А в Haskell очень сложно. Даже, если это очень надо.

unsafePerformIO тебе в руки.

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

> Расскажи это авторам yesod, happstack, snap, hoh и др.
> yesod

Кстати, как почитаешь вот это, начнёшь понимать Золотце с его «жидоматематикой».

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

> Язык Lisp смотрит на Haskell с недоумением, Fortran -с гордостью.

Ребя что это Lisp, Haskell, Fortran? Фрэймворки на PHP? Где скачать?

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

>Хорошая функция (как я понимаю) в функциональной парадигме дожна все при одних и тех же входных данных давать один и тот же результат. Функции, общающиеся с внешней средой таковыми не являются. Поэтому их следует делать как можно меньше, не?

да. но где в монаде IO нечистые функции? там все чисто.

kyz
()
Ответ на: комментарий от quantum-troll

> > Функция, работающая с IO, тоже является чистой

Т.е такие незначительные побочные эффекты, как изменение и влияние мира мы игнорируем?

монада этим не занимается. этим занимается рантайм - который не чистая функция.

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

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

программа не является функцией, не так ли?

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

> проблема не в производительности лиспа, а в слабой производительности фон-неймановской архитектуры. слабое место фон-арх. - шина данных. в лисп машинах эту проблему решили.

Какая прелесть. Назови мне Лисп-машину с не-фон-неймановской архитектурой?

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

> да. но где в монаде IO нечистые функции? там все чисто.

В монаде всё чисто. Но побочные эффекты есть. Но всё чисто. Но эффекты. Но...

Хаскеляторы такие хаскеляторы.

anonymous
()

Поздравляю хаскелистов с праздником. В частности, Булата Зиганшина автора FreeArc - единственной попадавшейся мне программы на этом языке :)

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

> Назови мне Лисп-машину с не-фон-неймановской архитектурой?

Будто их были сотни, лол.

ЕМНИП, одной Lisp Machine хватило, чтобы понять всю бесперспективность затеи (всем, кроме самих лисперов).

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

>> Назови мне Лисп-машину с не-фон-неймановской архитектурой?

Будто их были сотни, лол.

Архитектур было несколько.

ЕМНИП, одной Lisp Machine хватил

Какой? LMI, Symbolics, Explorer, еще какой-то?

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

>Он что, админ haskell.org ???

Он что, сам себе не админ?

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

>Ребя что это Lisp, Haskell, Fortran? Фрэймворки на PHP? Где скачать?

Зачем? Семки уже не вставляют?

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

> Ну как бы как минимум вот это всё:

куча библиотек, куча оберток, куча недоделок, многое заброшено, реально полезных вещей( не для программирования на хескеле ) - единицы, да и то уровня xmonad

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

> Какой? LMI, Symbolics, Explorer, еще какой-то?

Да любой. Будто хоть одна из них не была лютым фейлом.

(Сейчас набигут лисп-бои с кукареканьем про то, что фейла не было, что лисп-мойшины были похоронены злыми жидоэкономистами.)

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

Зато морфизмы есть! Кому нужны эти нелепые real-world библиотеки, когда есть category-extras?

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

>Он оказался на 8 лет старше StarCraft: Brood War

И старше тебя на десять.

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

>> Писать под веб на хаскеле хаскеля ради — это фанбоизм чистой воды.

Расскажи это авторам yesod, happstack, snap, hoh и др.

ключевые слова: «хаскеля ради». Все эти фреймворки находятся в стадии начального активного развития. Код, написанный на пхп, легко разворачивать и работать будет гарантированно. Хаскель? Удачи с развёртыванием, утечками памяти и ежемесячными обновлениями фреймворка.

Хорошо, что за haskell.org следят здравомыслящие люди, знающие область применения и уровень надёжности своих инструментов.

Да-да, про относительно недавний взлом code.haskell.org напомнить?

От этого никто не застрахован, особенно когда инфраструктурой занимаются добровольцы. И причём тут веб-приложения? Ломанули ведь по ссш.

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

>> Какой? LMI, Symbolics, Explorer, еще какой-то?

Да любой.

Я не вижу в них отклонения от фон неймана (тегированная память таким отклонением не является).

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

> Кто такой? Чем знаменит?

Упоротый хикки-обмудок с очкочана. Просит всех привести ему определение «множества» и «бесконечности», а, поскольку никто не может, отрицает математику и считает её жидовской лженаукой.

Разумеется, лиспер.

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

> писать под веб на хаскеле — фанбоизм?

Я этого никогда не говорил. Для любого инструмента есть свои рамки применения. Восхваление инструмента без понимания этих рамок — да, фанбоизм.

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

Да, сюда он пока ещё не метастазировал, но, прозреваю, что это — дело времени. Как увидишь сообщения типа «define «множество»», знай: Золотце уже здесь.

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

>куча библиотек, куча оберток, куча недоделок, многое заброшено, реально полезных вещей( не для программирования на хескеле ) - единицы, да и то уровня xmonad

Сами всё проверяли? :)

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

> define «define» бедняша

Очень смешно.

А я вот думаю... может, оффициально™ пригласить сюда Золотого? А то, с изгнанием Ловсанчега ссаными тряпками, в /development стало скучновато.

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

Мне лично в Хаскелле нравится то, что все эти библиотеки и программы доступны командой cabal install package_name, причём ещё с возможностью поиска по сигнатуре функции по всем этим пакетам.

Интересно, а в других языках есть такая централизованная система?

EvgenijM86
()

ITT срач функциональных хэллоуорлдщиков.

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

Ты б ещё PHP с его PEAR привёл, или жабу с мавеном.

Сказано же русским языком, С ПОИСКОМ ПО СИГНАТУРАМ.

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

Ну так, может, эффективно решите мне проблему разделения основного и сквозного функционала без макросов?

ФВП-шками. А при чём тут макросы?

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

> Сказано же русским языком, С ПОИСКОМ ПО СИГНАТУРАМ.

Смысл, в языках-то со слабыми типами? Искать void(*)(int, double, char*) что ли?

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