metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2014-05-03 06:34 am

Новый тренд в интернетах: поклонение кондовости и тупости

Вот последний пример: http://vit-r.livejournal.com/739457.html
"Уравнение шредингера вредно, потому что не сводится к арифметике первого класса, а наши индусы-контракторы буквы и значки не понимают".

Не очень понимаю, откуда этот луддизм в последнее время вылез, неосиляторы что-ли решили занятся своим job security?

[identity profile] metaclass.livejournal.com 2014-05-03 05:07 am (UTC)(link)
Ну если в ООП начинать применять "паттерны", то оно превращается в ФП, только на коленке и многословное.

[identity profile] vp.livejournal.com 2014-05-03 05:11 am (UTC)(link)
ПП, ФП, ООП - это парадигмы. Я считаю, что нет разницы, где использовать какую парадигму. Можно хитровывернуться и на паскале под дос сделать что-то в стиле ФП :)

[identity profile] metaclass.livejournal.com 2014-05-03 05:22 am (UTC)(link)
Ты ошибаешься и разница есть.
Вот возьми C# и попробуй на нем сделать метапрограммирование, как в лиспах. Или как в скале.
Или возьми паскаль/дельфи/C и сделай там вычисления на типах в процессе компиляции.

[identity profile] thedeemon.livejournal.com 2014-05-03 05:48 am (UTC)(link)
Берешь паскаль, пишешь на нем интерпретатор лиспа, на нем пишешь ML, на нем Coq, добавляешь сахара и соли по вкусу, и готово. Делов-то. :)

[identity profile] metaclass.livejournal.com 2014-05-03 06:02 am (UTC)(link)
Ну речь о написании виртуальных машин и языков на чем-угодно тьюринг-полном речи не идет, а то мы так и до бутстраппинга хаскеля из паскаля доберемся.

[identity profile] vp.livejournal.com 2014-05-03 06:13 am (UTC)(link)
Не, безусловно разница есть, это будет закатом солнца вручную на неподходящих инструментах.

[identity profile] mudasobwa.livejournal.com 2014-05-03 06:14 am (UTC)(link)
А что, в реальной жизни, вне олимпиад, бывают задачи типа «сделать метапрограммирование, как в лиспах»? Утюгом забивать шурупы неудобно, но это довольно слабый аргумент в пользу тезиса «утюг — абсолютно бесмысленная херня».

[identity profile] metaclass.livejournal.com 2014-05-03 06:30 am (UTC)(link)
Бывают, если нужно дохрена повторяющегося кода написать.
Можно обойтись кодогенерацией, но с доступом к компилятору и AST это все сильно проще.

[identity profile] mudasobwa.livejournal.com 2014-05-03 07:33 am (UTC)(link)
Ключевое слово в моем вопросе: «как в лиспах». Если нужно написать дохрена повторяющегося кода, можно взять лиспы, нет?

[identity profile] metaclass.livejournal.com 2014-05-03 07:37 am (UTC)(link)
Да даже с неповторяющимся кодом - на SQL и лиспах писать проще и короче. Но вот народ по ссылке нервничает и FUD распространяет, не дай бог нельзя будет набрать 100 индусов и проект пару лет делать вместо пары месяцев.

[identity profile] mudasobwa.livejournal.com 2014-05-03 07:57 am (UTC)(link)
» на SQL и лиспах писать проще и короче

Ну то есть вы отрицаете существование задач, в которых сиквела нет вообще, а ООП гораздо удобнее любой функциональщины?

[identity profile] metaclass.livejournal.com 2014-05-03 08:00 am (UTC)(link)
ООП в стиле смолтоллка с эрлангом или в стиле жабы-дотнета или мультипарадигменная шиза, как в С++?

[identity profile] mudasobwa.livejournal.com 2014-05-03 06:59 pm (UTC)(link)
Мне лично ближе эрланг, но в моем вопросе без потери общности можно оставить «любой».

[identity profile] nivanych.livejournal.com 2014-05-03 08:24 am (UTC)(link)
Речь шла о том, что "нет разницы, где использовать какую парадигму" не работает — разница очень так есть.

[identity profile] vit-r.livejournal.com 2014-05-03 01:46 pm (UTC)(link)
Пардон, если "надо написать много повторяющегося кода", что-то не так с архитектурой решения, а не с проблемами "отсталых" языков.

[identity profile] metaclass.livejournal.com 2014-05-03 03:15 pm (UTC)(link)
ORM, генерация UI?

[identity profile] vit-r.livejournal.com 2014-05-03 03:23 pm (UTC)(link)
Это проблема отсутствия адекватных инструментов для этих задач.

[identity profile] metaclass.livejournal.com 2014-05-03 03:25 pm (UTC)(link)
Ну вот при наличии метапрограммирования адекватные инструменты можно хоть как-то на коленке сделать, причем не выходя из рамок языка и не изобретая новых языков.

[identity profile] vit-r.livejournal.com 2014-05-03 03:27 pm (UTC)(link)
Не вижу ничего плохого в изобретении новых языков.

Люди, выйдя за рамки "нормальных языков" сделали и CAD, и табличный процессор.

[identity profile] serge shikov (from livejournal.com) 2014-05-03 05:09 pm (UTC)(link)
А можно смолтолк взять? :)