Simon Peyton Jones - Haskell is useless

Jun 12, 2012 16:07

image Click to view



В этой шутке есть доля шутки, хотя непонятно какая именно. То есть я смотрел, как metaclass под всеобщие аплодисменты пытался какие-то низкоуровневые вещи на Haskell делать, которые потом, по-моему, в момент были переписаны на Python. Или же Scala, которая, по идее, попадает в правый верхний угол этой диаграммки, стремительным ростом своей популярности ( Read more... )

мысли, fp, программирование

Leave a comment

Comments 27

metaclass June 12 2012, 12:34:05 UTC
IDE которое бы позволяло делать функциональные программы "черезточечьку" было бы кстати.
А то мне емакс настравать и его шорткаты учить влом.
Хотя поиск по сигнатурам типов и подстроке названия прямо в редакторе.

Reply

stdray June 12 2012, 12:44:22 UTC
>делать функциональные программы "черезточечьку"

Это наподобие чего?

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

Reply


(The comment has been removed)

stdray June 12 2012, 14:18:22 UTC
>им всегда мечталось "собирать программы из модулей" - сделать аналог конвейера

Вот и надо дать нормальный инструмент, ползволяющий делать безопастные модули и аккуратно их собирать. Вместо этого какое-то топтание на месте: новые дизигнеры, новые скалфолдинги, новые рефакторинги, но обобщить это все в T4 как-то попыток нет. То есть конструкт Лего и есть Дупло, а строить из разных деталей неудобно.

>Не наткнулась еще ни на единую кодерскую дискуссию, где бы обсуждали иконки и стиль студии. Всем наплевать на стиль.

А я натыкался на рсдн, на хабре и в чатике. Просто каждый строит в интернетах свои мирок так, чтобы неугодные вещи туда не проникали, но мне иногда вот попадается.

>Зачем тратить время на то, что ни на кого не произведет впечатления и не принесет денег?

Вот JetBrains в свое время решили, что стоит, и пришли у успеху. Я знаю, какое после Visual Studio оставляет ощущение Eclipse, потому не могу недооценивать важность хорошей IDE.

>У кодеров есть образовательная база и неплохая. Кнут, Кормен, и прочая. Местный вуз плох - ( ... )

Reply

(The comment has been removed)

stdray June 12 2012, 15:14:11 UTC
>с неким средневзвешенным "удобно для большинства", но подвижки-то есть, согласитесь

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

>В реале многих ваших коллег волнует стиль студии?

Нет) Хотя вроде сначала были недовольны синим цветом текущей студии.

>Согласитесь, что хорошая IDE появляется, 1. когда язык де-факто широко распространен 2. когда вкладываются значительные средства в создание и продвижение языка.

Да. Полурятность способствует появлению IDE, IDE способствует еще больше популярности.

>По-хорошему, в вуз следует идти, имея неслабую мотивацию.
>Лекция - это всегда результат некоего плана, спущенного сверху на количество часов
>Самостоятельно ставить цели, самостоятельно определять средства достижения и т.п

Вот здесь и проблема. То есть откуда возмется мотивация и появится цель. Зависимоть оплаты от качества кода и уровня специалиста не всегда имеет место.

Reply


unavella June 12 2012, 14:23:34 UTC
ide -- очень трудно написать одному, при этом нужно быть не только программистом, но ещё и дизайнером.
В идеале это команда программистов и команда дизайнеров, сколько дизайнеров знает ФП-языки, чтобы
в свободное время этим заниматься? Haskell компании, это небольшие группы программистов (Well-Typed например
или Tupil), стартап, они наскребли единомышленников и готовы делать real-world код им не до ide, тем более нужна помощь тех,
кто сумеет прилизать всё и допилить.

Reply

stdray June 12 2012, 14:34:37 UTC
Я прекрасно понимаю, что создание IDE очень сложный процесс, и что для функциональных языков потребность в IDE значительно ниже, чем для ООП языков. Но наличие такого продукта представляется мне некоторым критерием зрелости языка. Если например JetBrains внезапно сделает IDE для Haskell, значит, что, во-первых, колличество программистов перевалило за определенный рубеж, а во-вторых, что они при помощи Haskell деньги зарабатывают, а не просто развлекаются.

Reply


justy_tylor June 12 2012, 16:54:58 UTC
Это разные линии развития.

Популярные в восьмидесятые C и Turbo-Pascal (но не учебный Pascal Вирта) были решениями для создания продуктов.
Сегодняшние Java и C# - средства получения кайфа шаблонными архитекторами.
Сегодняшние Haskell и Scala - средства получения кайфа функционально продвинутыми программистами.

Да, на Scala может быть быстрее написать продукт/сервис, чем на стареньком C. Но это уже не является основной движущей силой и основным критерием выбора.

Reply

stdray June 12 2012, 21:02:52 UTC
Эти линии развития конкурируют на одном рынке. Наверное нам, как программистам интереснее, чтобы большее развитие получил второй вариант.

Reply

justy_tylor June 13 2012, 09:09:51 UTC
Какой из вторых вариантов? :)

Я за первый. Нужна возможность в минимум действий получить качественный продукт. Это первично. А уж кайф от предметки зависит, кому-то нравится САПР писать, а кому-то Дум на кофеварку портировать.

Если на первый план выходит кайф от использования инструментов - это может значить, что предметная область слишком скучна сама по себе. Но соответствие инструмента индивидуальному "кайфодоставляющему" мышлению программиста это значительный плюс, так что здесь подошли бы модули: category_theory_type_system, GoF_patterns_bloatware, colorless_icons, ... =)

Reply

stdray June 13 2012, 09:43:09 UTC
>Сегодняшние Haskell и Scala - средства получения кайфа функционально продвинутыми программистами.

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

Reply


ext_525077 June 13 2012, 05:41:39 UTC
Да просто дело в том, что ФП-разрабы чувствуют себя элитой. Там мейнстрим кипит, люди освобождают память, а фпшников это не касается, они смотрят на ооп-разрабов как на умственно отсталых. И отсутствие ИДЕ - это просто часть схемы элитизации комьюнити, инструмент искусственного повышения порога вхождения. Страшно же - а вдруг придут новые разработчики, свежее поколение, которые работают быстрее, учатся лучше, а вместо того чтобы трясти седой шевелюрой на хачкель-конференциях - разрабатывают полезные приложения. Это будет провал ВИП-ложи.
Так что - ИДЕ нет, потому что она не нужна самому комунити. Мы выбираем пластмассовых динозавров и непопулярность. Не надо удивляться что нет новой крови - она просто никому не нужна.

Reply

stdray June 13 2012, 08:47:15 UTC
Как правило, к новичкам хорошо относятся, тут ты не прав. Просто обобщаешь на всех ЗАШКВОР аудитории известных ресурсов ( ... )

Reply

(The comment has been removed)

stdray July 5 2013, 16:16:08 UTC
>И думал - а вот "хаскелисты" - быстрее наваяют такое?
Это вопрос развитости экосистемы языка / платформы. Просто хаскесты зачастую способны компенсировать ее недостатки своей собственной высокой квалификацией.

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

Я, например, просто физичекски не способен продумать систему до мелочей, потому стараюсь искать баланс проектирование <-> прототипирование. То есть занимаюсь обдумыванием, уточнением и проектированием пока у меня не получится ясная (для меня) картина в схемках, а потом начинаю писать используя всякие хипсто-технологии вроде объектных СУБД, попутно их инкапсулируя для ( ... )

Reply


Leave a comment

Up