Функциональное программирование |
Функциональное программирование всегда привлекало меня в противопоставлении к императивному.
Я очень часто обсуждаю различные аспекты функционального программирования на различных ветках на Базарной площади.
Но хотелось бы собрать всех заинтересованный этой темой в одной ветке.
Я думаю что настало время открыть такую тему. И вот почему.
Исторически функциональное программирование появилось практически вместе с императивным.
Вторым языком после фортрана был лисп.
Но увы, функциональное программирование надолго было уделом исследовательских институтов или специализированных приложений (Искусственный Интеллект)
Конечно не надо считать весь мир дураками из за того что развитие пошло по пути языков Алгол семейства.
Для этого были вполне обьективные причины. Функциональные языки слишком близки к человеку и слишком далеки от машины.
Они сьедают в десятки раз больше рессурсов чем императивные языки.
Вспомните претензии, предявляемые к java - первому императивному языку с виртуальной машиной и сборщиком мусора, толкаемому большими корпорациями в mainstream.
Жутко тормозит, и жрет всю память какая есть. А ведь функциональные языки (далее ФЯ) все без иключения имеют сборщик мусора, виртуальную машину.
Многие из них (семейство лисп) еще и динамические, что только усугубляет положение.
Вполне естественно что появившись более полусотни лет назад они надолго опередилли свое время.
Для широкого распространения ФЯ нужны гигабайты дешевой памяти и гигагерцы дешевых процессоров.
Прошло более 50 лет, прежде чем такие требования к железу стали реальностью.
Это время наступило. СЕЙЧАС.
Добро пожаловать в новую эру программирования.
Jack Of Shadows
Всего в теме 5502 сообщения
Добавить свое сообщение
Отслеживать это обсуждение
- Средства разработки. Языки программирования.
- Delphi 4 or Delphi 5
- Что приобрести в качестве средства разработки?
- Delphi6
- Delphi vs PowerBuilder
- Сравнение компиляторов
- Вот и вышла Delphi 7... Вы рады?
№ 5472 31-07-2012 12:33 | |
Ответ на »сообщение 5470« (Jack Of Shadows)
___________________________
А потом переполз на хаскель
Не скучаете по Lisp-у? Я в свое время пробовал Haskell и могу сказать, что с ним производительность (моя, во всяком случае) падает безумно по сравнению с Lisp-ом. Образно выражаясь, программирование на Lisp похоже на лепку произвольных фигур из глины/платилина, - ничто не ограничивает мою фантазию, Lisp - это просто полет мысли. А программирование на Haskell похоже на складывание конструкции из твердых кристаллов сложной формы. Вроде красиво, но тратится уйма времени на элементарнейшие вещи.
№ 5471 31-07-2012 12:22 | |
№ 5470 09-07-2012 15:29 | |
Ответ на »сообщение 5469« (Geniepro)
___________________________
Я также как и он, в свое время ушел с sbcl и по тем же причинам. Правда я ушел на clojure (лисп на JVM). А потом переполз на хаскель.
№ 5469 04-07-2012 01:52 | |
Ну вот одним шумным в рунете лиспером меньше:
>>>Перевожу стартап на .NET
>>> Скрепя сердце, с сожалением и горечью, но тем не менее, движимый рациональным подходом к делу, перевел код программы для своего стартапа с Common Lisp на Microsoft .NET, а именно на C#.
>>>Причины довольно банальны и прозаичны.
... http://love5an.livejournal.com/376801.html
№ 5468 26-04-2012 18:25 | |
http://www.altdevblogaday.com/2012/04/26/functional-programming-in-c/
Джон Кармак - автор легендарных Doom и Quake делится своим мнением о преимуществах функционального подхода на императивных языках (с++)
No matter what language you work in, programming in a functional style provides benefits. You should do it whenever it is convenient, and you should think hard about the decision when it isn’t convenient.
№ 5467 Удалено модератором | |
№ 5466 29-04-2011 01:38 | |
сообщение от модератораЯ тоже (как и Вагиф) не понял намек на Псилоцибе. Наверное, я тоже анашу курю, а не грибочками балуюсь :-)
Зато теперь понял. Результат понимания налицо. Будете дальше троллить, буду дальше... понимать.
№ 5465 Удалено модератором | |
№ 5464 Удалено модератором | |
№ 5463 Удалено модератором | |
Добавить свое сообщение
Отслеживать это обсуждение
Дополнительная навигация: |
|