Функциональное программирование во фронтенде: лямбда-исчисление и JS, монады, Elm, Fantasy Land
Vložit
- čas přidán 1. 03. 2020
- Артем Казарян, Front-End Developer of DSR Corporation, рассказывает о функциональном программировании для веб-разработчиков. Из видео вы узнаете о базовых принципах программирования в функциональном стиле, ключевых приемах и его пользе для современного фронтенд-разработчика. Вы узнаете, что программировать в рамках функциональной парадигмы можно на привычных во фронтенде языках.
Ключевые тезисы доклада:
- Функциональное программирование на Vanilla JS.
- Лямбда-исчисление с помощью JavaScript.
- Fantasy Land, спецификации для алгебраических структур в JS. Что такое монады.
- Функциональные языки ELM, PureScript, ReasonML.
Полезные ссылки:
FP: en.wikipedia.org/wiki/Functio...
Introduction to Functional Programming: www.cl.cam.ac.uk/teaching/Lec...
Church encoding: en.wikipedia.org/wiki/Church_...
Lambda calculus: en.wikipedia.org/wiki/Lambda_...
Fantasy Land: github.com/fantasyland/fantas...
Thorough analysis of Fantasy Land: www.tomharding.me/2017/03/03/f...
Things I wish someone had explained about functional programming: jrsinclair.com/articles/2019/...
Elm: ru.dsr-corporation.com/blog/1...
PureScript: www.purescript.org/
PureScript + VueJS: • Functional Frontend wi...
ReasonML: reasonml.github.io/
BuckleScript: bucklescript.github.io/
Redex: redex.github.io/
Картинки интересные, спасибо что рядом постоял
Зашел разобраться с лямбда функциями, ничего не понял
Вот после просмотра таких видео, люди шарахаются от ФП. Это знаете как с мемом, рисуем сову. Не надо так.
Извините, не подскажите какой-нибудь материал по ФП для JavaScript? Много чего пытаюсь найти для простого разбора, но ничего толком хорошего не нашел, за исключением канала - czcams.com/users/sthxnp , ну и книжки mr Frisby. Возможно, существуют доклады, которые хорошо показывают основы?
@@alexmerser7455 вот ещё шикарный доклад czcams.com/video/2QAUAZ5qgJM/video.html , как Вы наверное уже убедились материала не так много, это печально. Но тот кто ищет, тот всегда найдёт.
@@alexmerser7455 почему то пропал мои первый ответ, повторю, лучшее что есть по Вашему запросу на сегодня, это книга Луис Атенсио - Функциональное программирование на JavaScript.
@@Iaxls оо, я год назад читал эту книжку, но во второй половине книги потерялся, возможно, в силу отсутствия опыта) спасибо)
@@Iaxls и доклад тоже уже этот посмотрел, спасибо :)
Каким боком иммутабельность и чистые функции к ФП? Это просто хороший стиль любого программирования: не мутировать стейт и юзать как можно больше функции без побочек. А ФП - это про композиции и комбинации.
Основа ФП это чистые функции.
@@AnarchySane , покажи мне хоть одну полезную программу на чистых функциях)
@@ne4to777 функция редьюсера, возвращающая новое состояние на основе экшена (напр. в Redux'е). Иммутабельность и чистые функции - важнейшие части парадигмы ФП. Можешь в википедии почитать, странно, что тебе было не лень накатать коммент, но лень загуглить "функциональное программирование" и открыть первый же результат.
@@AnarchySane , чистые функции это основа любой парадигмы. Умение писать максимально чисто это везде хорошо, так же как и максимально синхронно.
@@user-vn3vo3zf2m , то есть как только мы пишем нечистые функции и мутируем стейт это сразу уже не ФП?