Языки функционального программирования

Языки функционального программирования

 Функциональное программирование - подход, который высоко ценится в среде бывалых программистов, и в последнее время быстро набирающий популярность.

 Что такое функциональное программирование?

 При функциональном программировании процесс вычисления интерпретируется как вычисление значений функции в их математическом понимании. По сути, функциональное программирование трактует и данные, и функции как неизменные. В таком программировании функция не меняет исходные данные или состояние. Функция должна быть чистой, чтобы выходные данные зависели только от входных.

 Языки функционального программирования

 Есть две категории языков в ф.п. - те, которые терпимо относятся к такой парадигме, и те, которые специально созданы для нее. Например, JavaScript и Pyton можно отнести к тем, кто терпимо относится к ф.п.

 JavaScript и Pyton

 В языке JavaScript много функциональных парадигм. К примеру, функции высшего порядка. Эти функции принимают другие функции за аргумент. Также есть функции, которые работают с массивами, такими как map (), redu (), filter () и прочими.

 Python - универсальный язык, он позволяет работать с любыми парадигмами. Вы найдете здесь такие же встроенные функции высшего порядка - map (), filter (), redu (). В ф.п с Pyton есть такое выгодное преимущество как lambda. Lambda можно использовать при сокращении простых функций, но настоящее свое преимущество lambda демонстрирует, когда вы используете ее в качестве анонимной функции.

 Вторая категория, включает в себя Clojure, Elm и Haskell.

 Clojure

 

 Clojure - своего рода ответвление Lisp. Как и многие другие его ответвления, для Clojure код - это данные. В отличие от других ответвлений Lisp, Clojure поддерживается на Java и собирается в байт-код JVM. Это значит, что можно спокойно работать с библиотеками Java, независимо от того, писался код на Clojure или нет. Clojure ратует за использование чистых функции везде, где это только возможно.

 Elm

 Elm – новичок в этом перечне. Elm сугубо функциональный. Больше всего он востребован в среде разработчиков, особенно у тех, кто создает пользовательские интерфейсы. Одним из его основных плюсов является статическая проверка типов. Также компилятор Elm подходит для HTML, CSS и JavaScript. Можно спокойно создавать приложения, использующие JavaScript библиотеки. В Elm вы не обнаружите универсальные функций. Вместо них присутствуют List.map или Dict.map.

 Haskell

 Haskell - еще один язык, созданный специально для функционального программирования. Имеются стандартные функции: map (), filter (), redu () и много других функций высшего порядка, благодаря которым, вы сможете перенести понятия из JavaScript или Python в Haskell.

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

Поделитесь
в социальных сетях

Добавить комментарий

Комментариев пока нет. Вы будете первым!

Как продать дизайн?

Наши и другие рекомендации по разработке дизайна и дальнейшей публикации на сайте