Статьи
- Функциональное программирование
- Два столпа JavaScript
- Жаргон функционального программирования
- Master the JavaScript Interview: What is Functional Programming?
- Функциональный JavaScript: развязка методов из их объектов
- Справочник современных концепций JavaScript
— Часть 1. Основы функционального программирования, реактивного программирования и функционального реактивного программирования на JavaScript
— Часть 2. Изучите область видимости, замыкания, потоки данных и концепции, широко используемые в современных JavaScript фреймворках и приложениях - Цикл статей о функциональном программировании в JavaScript
— введение - Итак, вы хотите научиться функциональному программированию:
часть 1, часть 2, часть 3, часть 4, часть 5, часть 6
Чистые функции
- Борьба с грязными побочными эффектами в чистом функциональном JavaScript-коде
- Hexlet/Введение в программирование → Чистые функции
- Делаем свой JavaScript чистым
- Осторожно! Возможны побочные эффекты
Каррирование, карринг, currying
Композиция
Функторы
Tрансдьюсеры
Декораторы
- Минимальное руководство по декораторам ECMAScript
- Декораторы (Александр Майоров):
— Часть 1, теоретическая
— Часть 2. Оператор декорирования - Декораторы в JavaScript
- Разбираем декораторы ES2016
- javascript-decorators
- Exploring ES2016 Decorators
- Library of JavaScript decorators
- Fitted. Use ECMAScript decorators to execute HTTP requests and manage processing of responses
Средства FP
Fantasy land
- Спецификация Fantasy Land
- Cпецификация волшебного мира:
— Daggy
— Описание типов
— Setoid - Функциональное программирование с примерами на JavaScript. Часть первая. Основные техники функционального программирования
Lodash
Ramda
- Почему Ramda?
- Мышление в стиле Ramda:
— первые шаги
— cочетаем функции
— частичное применение (каррирование)
— декларативное программирование - Практика функционального программирования на JavaScript с использованием Ramda
- Сигнатура типов функции в JavaScript
- Practical Functional Javascript with Ramda
- Functional lenses with and without Ramda
- Write Reacts components in a functional way with Ramda and PointFree
- Thinking in Ramda