Programmering av högre ordning

Högre ordningsprogrammering är en stil av datorprogrammering som använder programvarukomponenter, som funktioner, moduler eller objekt, som värden. Det är vanligtvis instansierat med, eller lånat från, beräkningsmodeller som lambda-kalkyl som använder mycket högre ordningsfunktioner . Ett programmeringsspråk kan anses vara av högre ordning om komponenter, såsom procedurer eller etiketter, kan användas precis som data. Till exempel kan dessa element användas på samma sätt som argument eller värden.

Till exempel, i högre ordningsprogrammering kan man skicka funktioner som argument till andra funktioner och funktioner kan vara returvärdet för andra funktioner (som i makron eller för tolkning ). Denna programmeringsstil används mest i funktionell programmering , men den kan också vara mycket användbar i objektorienterad programmering . En något annorlunda tolkning av högre ordningens programmering i sammanhanget med objektorienterad programmering är meddelanden av högre ordning , som låter meddelanden ha andra meddelanden som argument snarare än funktioner.

Framträdande exempel på språk som stöder detta är Wolfram Language , C# , Java , ECMAScript ( ActionScript , JavaScript , JScript ), F# , Haskell , Lisp ( Common Lisp , Scheme , Clojure , andra), Lua , Oz , Perl , PHP , Prolog , Python , Ruby , Smalltalk , Scala , ML och Erlang .

Se även

externa länkar