Доброго времени суток! Меня зовут Иван Смолин, я разработчик мобильных приложений на платформе iOS. Сегодня предлагаю вам окунуться в мир функционального программирования. Статья носит по большей части теоретический характер, нежели практический. В ней я постараюсь дать определения основным понятиям функционального программирования и покажу примеры реализации на C, Objective-C, Swift, Haskell.
Функциональное программирование — это парадигма программирования, которая акцентируется на вычислении через функции в математическом стиле, неизменяемость, выразительность и уменьшение использования переменных и состояний ([ссылка][1]).
Существует 6 основных концепций:
* концепция первого класса и функций высшего порядка
* концепция чистых функций
* концепция неизменяемого состояния
* концепция опциональности и сопоставления с образом
* концепция ленивости и бесконечных структур данных
* концепция лямбда-исчислений
[Читать дальше →][2]
[1]:
https://www.raywenderlich.com/82599/swift-functional-programming-tutorial
[2]:
https://habrahabr.ru/post/314510/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut