Funktionsnamen finden (Lisp/Scheme/Haskell like)

Gast #6315851
Mit welchen Suchbegriffen finde ich den gängigen Namen der in den 
folgenden Pseudo-C-Deklarationen mit drei Fragezeichen markierten 
Funktion?
1
list map (unary_function, list);
2
value fold (binary_function, list);
3
list ??? (binary_function, list, list);
Viele Dank
Gast #6316358
ich glaub dem Dude ist nicht ganz klar was er überhaupt fragen will...

denn mit zwei Funktionsnamen einen dritten zu erraten ist vermutlich
so genau wie aus zwei gezogenen Lottokugeln die nächste vorherzusehen.

Mein erster gedanke war.. compare
weil zwei Listen als parameter übergeben werden..
und eine binary funktion mir vorhanden/nichtvorhanden suggeriert

Aber wie gesagt, das ist in etwa so zuverlässig wie besagte Lottokugel.


'sid
Gast #6316433
Jim M. schrieb:
> Mir ist nicht so ganz klar was ???  machen soll.

sid schrieb:
> Mein erster gedanke war.. compare
> weil zwei Listen als parameter übergeben werden..
> und eine binary funktion mir vorhanden/nichtvorhanden suggeriert

Eine Verallgemeinerung von compare auf alle Typen soll es ungefähr sein, 
so dass man z. B. auch pow() übergeben könnte.
Moderator #6316535
Für Haskell gibt es die Suchmaschine Hoogle, die Funktionen anhand ihrer
Signatur findet:

  https://hoogle.haskell.org/

Die Suche ist dabei tolerant, d.h. es werden auch Funktionen gefunden,
deren Signatur nur ungefähr mit der vorgegebenen übereinstimmt.

Deine drei Beispiele in Haskell-Signaturen übersetzt und in Hoogle
eingegeben liefern u.a. die folgenden Funktionen:

1
Signatur                              Funktionen
2
────────────────────────────────────────────────────────────────
3
(a -> b) -> [a] -> [b]                map
4

5
(a -> a -> a) -> [a] -> a             foldl1, foldl1' und foldr1
6

7
(a -> b -> c) -> [a] -> [b] -> [c]    zipWith, zipWithLazy
8
────────────────────────────────────────────────────────────────

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 6 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.