Funció d'ordre superior

En matemàtica o informàtica, les funcions d'ordre superior són funcions que compleixen una de dues:

  1. prendre una o més funcions com a entrada
  2. retornar una funció com a sortida

En Matemàtica aquestes funcions s'anomenen operadors o funcionals.

En Informàtica se'n poden crear en nombrosos llenguatges de programació però són particularment freqüents en els que incorporen el paradigma de la programació funcional.

Exemples en diversos llenguatges modifica

en Python modifica

def f(x):
return x + 3
def g(fu, x):
return fu(x) * fu(x)
print g(f, 7)

en Haskell modifica

f::Int->Int
f x = x + 3
g::(Int->Int) -> Int -> Int
g fu x = fu x * fu x
main = do
putStrLn "resultat = " ++ show $ g f 7