Skip to content

Что нужно языку программирования, чтобы считаться функциональным

Zaira edited this page May 25, 2018 · 3 revisions

/#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] в функциональных языках нет циклов

Clone this wiki locally