Funció d'ordre superior

De la Viquipèdia, l'enciclopèdia lliure

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