This is an old revision of the document!
===== Laborator 5 - TDA-uri polimorfice. Clase de tipuri ===== ==== TDA-ul listă ==== * (Re)definiți tipul de date polimorfic ''List a'' * (Re)implementați funcțiile ''foldr'', ''foldl'', ''map'' și ''filter'' pentru TDA-ul creat ==== TDA-ul arbore ==== * (Re)definiți tipul de date polimorfic ''Tree'' * (Re)implementați ''tmap'' (echivalentul lui ''map'' pe arbori) * (Re)implementați ''tzipWith'' (echivalentul lui ''zipWith'' pe arbori) * (Re)implementați ''foldT'' (fold pe arbori) * (Re)implementați ''tmap'' pe baza lui ''foldT'' * Implementați operația de transformare a unui ''Tree\'' într-un ''List'', folosind traversarea arborelui în preordine/inordine/postordine. ==== Clase de tipuri ==== * Înrolați tipurile de date ''List'' și ''Tree'' în clasa ''Show'' * Înrolați aceleași tipuri în clasa ''Eq'' * Implementați sortarea pentru ''List a'', unde ''a'' e un tip oarecare înrolat în clasa ''Ord'' * Implementați căutarea binară pentru ''Tree a'', unde ''a'' e un tip oarecare înrolat în clasa ''Ord'' * Înrolați tipurile de date ''List'' și ''Tree'' în clasa ''Functor''