Описание тега higher-order-functions
Функции высшего порядка - это функции, которые либо принимают функции как аргументы, либо возвращают их как выходные данные (или и то, и другое). Они являются краеугольным камнем функционального программирования.
Функции высшего порядка - это функции, которые либо
- принимать функции в качестве аргументов или
- вернуть их как результат
(или оба). Функции, которые не выполняют ни того, ни другого, известны как функции первого порядка.
Функции высшего порядка являются краеугольным камнем парадигмы функционального программирования, в которой манипулирование и преобразование функций, по крайней мере, так же распространено, как манипулирование и преобразование данных. Тем не менее, некоторые из наиболее широко реализуемых функций высшего порядка также встречаются в современных императивных языках. Примеры включают
map
filter
- функции складывания (
foldl
,foldr
так далее.)