metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2012-08-20 11:20 am
Entry tags:

Офигенная статья, объясняющая ВСЕ про FP

http://blog.jelastic.com/2012/07/24/functional-programming-is-a-ghetto/
So why is functional programming, despite its virtues, a ghetto? The answer is that we tend to insist on good design, to such a degree that we avoid taking jobs where we’re at risk of having to deal with bad designs.

PS: В статье позитивная айседовщина. "IDE не нужны, потому что на продакшен сервере за тридевять земель вам они не помогут", "только идиоты начинают разработку на жабе или С++ в 2012 году" и прочее такое.

Еще того же автора: http://michaelochurch.wordpress.com/2012/04/13/java-shop-politics/

[identity profile] zerthurd.livejournal.com 2012-08-20 09:42 am (UTC)(link)
Да не такое уж ФП и мёртвое. Erlang, например, живее всех живых. Конечно, если смотреть на всякие хаскели-окамли, можно и действительно подумать, что ФП померло.

[identity profile] zerthurd.livejournal.com 2012-08-20 09:43 am (UTC)(link)
C++ будут использовать столько, сколько и C. Это ещё лет 50. Правда, тогда он станет языком байткода, каким сейчас уже стал JS, в C++ будут только компилировать, трогать его руками будет заборонено статьями Конституций.

[identity profile] maxdz.livejournal.com 2012-08-20 09:44 am (UTC)(link)
Если бы ты умел читать на английском - не лез бы сюда с идиотическими комментариями.

[identity profile] fas-tm.livejournal.com 2012-08-20 09:46 am (UTC)(link)
еще раз объясняю на пальцах, какая разница на чем написана ось и как, если прикладной софт выполняется поверх VM а графическая подсистема априори не позволяет нормально сделать без тормозов морду(из-за блокировки основного потока в котором рендериться интерфейс). Сейчас это решается накидыванием железа и ядер, но если вдуматься - тетрис на 4-х ядерном смартфоне может тормозить ... кошмар.
Edited 2012-08-20 09:47 (UTC)

[identity profile] maxdz.livejournal.com 2012-08-20 09:49 am (UTC)(link)
>C++ будут использовать столько, сколько и C. Это ещё лет 50.

C, думаю, помрёт намного раньше (если не уже). Основная его область применения, которую я могу представить - написание кода для всяких чипов, который потом транслируется в нативный для чипов код - но и там уже используется, скорее C++ (пускай, многие используют его в усечённом виде, как "C++ без классов").

Потому, собственно, существует комитeт стандартизации C++, который готовит новый стандарт - но комитет стандартизации C уже давно умер, за ненадобностью.

[identity profile] dr-hyder.livejournal.com 2012-08-20 09:49 am (UTC)(link)
Ну и скала ещё.

[identity profile] maxdz.livejournal.com 2012-08-20 09:52 am (UTC)(link)
>если прикладной софт выполняется поверх VM

Там есть C++ ный АПИ? Вроде, есть (хотя, я не спец по Андроидам).

Если есть - значит, компиляция в нативный код и исполнение НЕ на Джава-машине. Что, в общем-то логично, учитывая, что ядро на C++ (если не на C).
Edited 2012-08-20 09:53 (UTC)

[identity profile] fas-tm.livejournal.com 2012-08-20 09:52 am (UTC)(link)
да ? только он нихера не позволяет сделть нормально :)
И именно поэтому скачивая с аппстора я уверен что софт будет работать, а вот с гугл маркет(play уже сейчас) неработоспособно каждое 7-ое приложение в зависимости от твоего телефона и фазы луны.

[identity profile] zerthurd.livejournal.com 2012-08-20 09:52 am (UTC)(link)
В C просто что попало не пихают, поэтому нужды в комитете стандартизации нет. Раз в 10 лет что-нибудь добавят и всё.

[identity profile] zerthurd.livejournal.com 2012-08-20 09:53 am (UTC)(link)
Скала академична чуть более, чем совсем. Она уже сейчас по сложности обогнала Haskell и приближается к C++.

[identity profile] dr-hyder.livejournal.com 2012-08-20 09:55 am (UTC)(link)
Ну странная статья же. Вторая про джава-шоп гораздо актуальней.
А тут просто - ребята, вы все такие умные, но вы в курсе что вас там 2% индустрии и вообще про вас никто не знает в большинстве своём? Нет, блядь, мы то думали весь мир состоит из одного ФП, а тут нам гражданин глаза открыл!
Надо на динамику смотреть, а не комплексовать из за маленького роста. А динамика в том что пять лет назад о ФП вообще никто кроме как в паре университетов не знал. А сейчас вас АЖ ЦЕЛЫХ 2%!

[identity profile] jakobz.livejournal.com 2012-08-20 09:56 am (UTC)(link)
Отличная статья.

ФП - это больше уже движуха на гребне IT-науки, нежели что-то конкретное. Даже если (лучше даже сказать "когда") ФП продавится в массы и все начнут писать на ссылочно-прозрачных языках, туса все равно останется и будет ковырять дальше, пропагандируя наружу уже другие, но такие же клевые штуки.

[identity profile] maxdz.livejournal.com 2012-08-20 09:57 am (UTC)(link)
Приложение, выложенное в нативном коде (типа, исполняемый без "виртуальной машины" файл) - платформозависимое. Думаю, дело в этом.

[identity profile] dair-spb.livejournal.com 2012-08-20 09:58 am (UTC)(link)
1. Планшеты без 3g вне wi-fi. Планшеты с 3G и смартфоны вне зоны покрытия.
3. "На клиенте уже не особая проблема" Увы и ах, пока что ещё проблема. Я про интерфейсы говорю, конечно же. А ещё, вот, как звук проиграть в ogg/vorbis?
4. Да, если камнем преткновения не является app core feature ;-)

[identity profile] dr-hyder.livejournal.com 2012-08-20 09:59 am (UTC)(link)
Ну я о том о чём говорится в статье - о том что использует индустрия. А там скала пока растёт (http://www.indeed.com/trendgraph/jobgraph.png?q=scala&relative=1). Сложная она или нет - это введение для многих в ФП, а если не введение, то хотя бы люди начинают подозревать что ФП вообще есть. Популяризация то есть. Какая-никакая а популяризация.

[identity profile] maxdz.livejournal.com 2012-08-20 09:59 am (UTC)(link)
Хотя не, работает сишный комитет тоже:
http://www.open-std.org/jtc1/sc22/wg14/

[identity profile] dair-spb.livejournal.com 2012-08-20 09:59 am (UTC)(link)
Ржал, отлично.

[identity profile] zerthurd.livejournal.com 2012-08-20 10:01 am (UTC)(link)
Почти вся индустрия — это сайты на PHP/Ruby, или опердени на Delphi/1С/C#. Это вообще никакой не аргумент.

[identity profile] fas-tm.livejournal.com 2012-08-20 10:02 am (UTC)(link)
мне надоело со стенкой разговаривать. иди читай про JNI.
>>ядро на C++
Ядро всегда было на С
>>и исполнение НЕ на Джава-машине
какой кошмар. ты не знаешь основ. Вообщем пойди почитай книжки... еще раз говорю, это принесет тебе пользу. В любом случае весь код станет НАТИВНЫМ, вопрос только в том, каким путем он им станет и сколько абстракций/прокладок будет на пути.

[identity profile] dair-spb.livejournal.com 2012-08-20 10:03 am (UTC)(link)
там нет C++ного API сверх POISX и OpenGL ES.

В нашем, игрушковом случае, на Android мы пишем маленький враппер на Java с созданием OpenGL ES контрола и передачей его хэндлера (UInt32, ага) в C++. Где уже всё крутится вокруг стандарта на OpenGL ES с одной стороны и POSIX с другой.

И, повторюсь, самый ад в том, что это практически не отлаживаемо.

[identity profile] tzirechnoy.livejournal.com 2012-08-20 10:04 am (UTC)(link)
Исполнять в штаб-квартире Microsoft.

[identity profile] zerthurd.livejournal.com 2012-08-20 10:05 am (UTC)(link)
Тут вся беда во фрагментации. На iOS работают iPhone и iPad, а на Android — миллиард всяких узкоглазых девайсов чуть ли не штучного производства.

[identity profile] tzirechnoy.livejournal.com 2012-08-20 10:05 am (UTC)(link)
Да на лиспах тожэ пишут. Правда, немногие. Ну, я в интеллектуальном большынстве и не сомневаюсь, чего тут такого.

[identity profile] fas-tm.livejournal.com 2012-08-20 10:05 am (UTC)(link)
Пожалуйста, не думай. Просто попытайся не думать. Всем от этого будет легче :)

[identity profile] dr-hyder.livejournal.com 2012-08-20 10:08 am (UTC)(link)
Я вроде ровно это и говорю, нет? Какая разница сколько процентов, важно что эти проценты растут, а не снижаются. То что ФП никогда не будет парадигмой большинства - ну дык и хрен с ним, подумаешь. Будем гетто-оазисом посреди джава-пустыни! ;)

Page 2 of 7