mathematical function that takes one or more functions as an input or that outputs a function
Funkcja wyższego rzędu (ang. higher-order function) – w informatyce jest to funkcja, która zwraca lub przyjmuje jako argument inne funkcje. Tego rodzaju funkcje są powszechnie stosowane w językach funkcyjnych, takich jak SML, Ocaml, Haskell, Lisp, jak również w Pythonie i JavaScripcie. Aby można było tworzyć funkcje wyższego rzędu, funkcje muszą być typem pierwszoklasowym. Analogicznym pojęciem w matematyce jest funkcjonał. Funkcje wyższego rzędu służą często do dostarczenia generycznych realizacji algorytmów, zaś programista parametryzuje je własnymi funkcjami (nierzadko bardzo prostymi, patrz przykład niżej). W bibliotekach standardowych są spotykane: * map (funkcja, lista) – zwraca nową listę, zawierającą wyniki funkcji dla każdego elementu z wejściowej listy; * filter (funkcja, lista) – zwraca nową listę, składającą się tylko z tych elementów listy wejściowej, dla których funkcja (predykat) zwróciła prawdę; * foldl (wartość początkowa, funkcja, lista) (fold left) – dla wszystkich elementów listy wywoływana jest funkcja, która przyjmuje dwa argumenty – wartość z listy, oraz wynik dla poprzedniego elementu; * foldr (wartość początkowa, funkcja, lista) (fold right) – działanie analogiczne do foldl, z tym że lista jest przeglądana od końca; * reduce (funkcja, list) – funkcja występuje w Pythonie działa jak foldr z wartością początkową jako pierwszy element listy; * curry (fun, arg1, arg2, ...) – zwraca nową funkcję która przyjmuje początkowe wartości przekazane jako argumenty. ; * rcurry (fun, arg1, arg2, ...) – działa tak jak curry tylko argumenty są zamienione .
Abstract from DBpedia / Wikipedia · CC BY-SA
via Wikidata sitelinks · CC0
Discovered by embedding cosine similarity (sentence-transformers MiniLM, 384-dim).