Cilj diplomskog rada bio je implementirati sustav za simbolicko računanje (CAS) u programskom jeziku Haskell. Iz perspektive CAS-a, ova implementacija ima osnovnu funkcionalnost pojednostavljivanja izraza, te dodatnu funkcionalnost rješavanja sustava linearnih jednadžbi. Iskoristili smo Haskellov način definiranja tipova (Algebraic data types) kako bismo jednostavno implementirali osnovni tip T (term). Zbog visoke razine apstrakcije koju Haskell pruža, omogućeno nam je lako definiranje funkcija poput tmap ili tFoldMap (analogije Haskell funkcija fmap i foldMap, samo nad termima). Preko takvih funkcija prirodno se mogu opisati korisne funkcije i upiti nad termom. Funkcije poput djelovanja nekom funkcijom na svaki čvor terma, ili ispitivanja ...