A function that takes other functions as arguments, returns a function as its result, or both. These functions enable powerful abstractions and are fundamental to functional programming paradigms.
The term 'higher order' comes from mathematics, specifically higher-order logic developed in the late 19th century. In computing, it was adopted in the 1950s with LISP to describe functions that operate on other functions, elevating them to a 'higher order' of abstraction.
Try Another Word