This is an old revision of the document!


Hoogle este un motor de căutare pentru funcții, tipuri, clase etc. de Haskell. Puterea sa constă în abilitatea de a căuta funcții atât după nume cât și după tip.

Căutare după nume

Considerați că tocmai ați auzit de funcția Haskell scanl, dar nu știți ce face. Căutând numele pe Hoogle (https://www.haskell.org/hoogle/?hoogle=scanl) obțineți o listă de rezultate similare; observați că hoogle face matching parțial și vă găsește și funcții numite scanl1.

Este foarte posibil ca pentru o singură funcție, să găsiți mai multe rezultate cu același nume. În general, acestea sunt funcții din pachete diferite cu același comportament dar specializate pentru alte tipuri de date. De obicei, primul rezultat ar trebui să fie cel dorit.

Fiecare rezultat are următoarele componente:

  • pe prima linie este numele complet al funcției (partea care a făcut match cu bold), urmat de tipul funcției
    • click pe numele sau pe tipul funcției vă va duce la descrierea completă a acesteia din cadrul pachetului în care e definită
  • următoarea linie (cu verde) conține o listă separată cu virgulă de forma “pachet modul-din-pachet” în care se găsește funcția (nu e necesar să înțelegeți bine noțiunile de “pachet” și de “modul”; vă veți uita în principal după funcții care conțin base Prelude)
  • următoarea linie conține o descriere a comportamentului funcției; butonul + de la începutul rândului expandează acest câmp, dacă descrierea este lungă