Описание тега higher-order-functions

Функции высшего порядка - это функции, которые либо принимают функции как аргументы, либо возвращают их как выходные данные (или и то, и другое). Они являются краеугольным камнем функционального программирования.

Функции высшего порядка - это функции, которые либо

  1. принимать функции в качестве аргументов или
  2. вернуть их как результат

(или оба). Функции, которые не выполняют ни того, ни другого, известны как функции первого порядка.

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

  1. map
  2. filter
  3. функции складывания (foldl, foldr так далее.)