This is an old revision of the document!
Hoogle
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.
Anatomia unui rezultat
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ă