-
Notifications
You must be signed in to change notification settings - Fork 30
Что нужно языку программирования, чтобы считаться функциональным
/#functional programming
d.porollo [1:52 AM] а питон и руби нет ?
kirill.mokevnin [1:53 AM] как это нет
kirill.mokevnin [1:53 AM] или вы про функциональность?
d.porollo [1:53 AM] Я их всегда функциональщиной считал...
kirill.mokevnin [1:54 AM] )
kirill.mokevnin [1:54 AM] нет это не функциональные языки
kirill.mokevnin [1:54 AM] типичные императивные
kirill.mokevnin [1:54 AM] с некоторыми функциональными фишками, которые есть и в php и в java
kirill.mokevnin [1:54 AM] и почти в любом другом императивном языке
d.porollo [1:55 AM] а эрланг да, конечно круто, но блин от него мозги могут пострадать необратимо )))
kirill.mokevnin [1:56 AM] а вы знаете что самое главное чтобы считаться функциональным?
d.porollo [1:56 AM] логично что функции
kirill.mokevnin [1:56 AM] нет
kirill.mokevnin [1:56 AM] :smile:
kirill.mokevnin [1:56 AM] в этом и ловушка
kirill.mokevnin [1:57 AM] 99 процентов человек которые не знают функционалных языков, думают что процедурный подход и есть функциональный подход
kirill.mokevnin [1:57 AM] типа если пишем без классов
d.porollo [1:57 AM] точнее использование функций в вмде аргументов функций
kirill.mokevnin [1:57 AM] тоже нет
kirill.mokevnin [1:57 AM] это штука пришла из функциональных языков но она везде есть
kirill.mokevnin [1:57 AM] это называется функции как объекты первого рода (first class functions)
kirill.mokevnin [1:57 AM] и в php и в java и где угодно
kirill.mokevnin [1:58 AM] еще попытка? 😉
d.porollo [1:59 AM] разве что типы
d.porollo [2:00 AM] а так все
kirill.mokevnin [2:00 AM] тоже нет
d.porollo [2:00 AM] И ?
kirill.mokevnin [2:00 AM] функциональный это читается как “функционально как в математике"
kirill.mokevnin [2:00 AM] в математике вот такое выражение не возможно y = y + 1
kirill.mokevnin [2:00 AM] в смысле такое определение функции
d.porollo [2:01 AM]** Да, хоть Я не математик, но согласен.
kirill.mokevnin [2:01 AM] все люди всю свою школьную жизнь изучали можно сказать функциональную парадигму
kirill.mokevnin [2:01 AM] так вот функциональный язык это язык в котором в первую очередь отсутствует присваивание
kirill.mokevnin [2:01 AM] и там отсутствуют переменные
kirill.mokevnin [2:02 AM] а когда вы видите в функциональном языке y = 5 это называется “связывание"
kirill.mokevnin [2:02 AM] мы просто связываем символ y со значением 5
kirill.mokevnin [2:02 AM] опять же как в математике
kirill.mokevnin [2:02 AM] и поменяться оно не может
kirill.mokevnin [2:02 AM] это типа алиас
kirill.mokevnin [2:02 AM] отсюда куча разных следствий
kirill.mokevnin [2:03 AM] в функциональных языках нет циклов