Tüübiklassidega funktsionaalprogrammeerimine Scalas

dc.contributor.advisorVesal Vojdani
dc.contributor.authorKuulmets, Hele-Andra
dc.date.accessioned2019-10-15T08:21:02Z
dc.date.available2019-10-15T08:21:02Z
dc.date.issued2017
dc.description.abstractScala on Java virtuaalmasinat kasutav mitme-paradigma programmeerimiskeel,mis võimaldab omavahel kombineerida objektorienteeritud ja funktsionaalseid tehnikaid. Scala kui funktsionaalse keele miinuseks on, et selle standardteegist puuduvad funktsionaalprogrammeerijale harjumuspärased abstraktsioonid– tüübiklassid, millega saab kirjeldada erinevate tüüpide ühiseid omadusi,ilma et need peaksid pärinema samast ülemklassist. Selle puudujäägi kõrvaldamiseks on Scala jaoks loodud neid abstraktsioone sisaldav teek nimega Cats. Antud bakalaureusetöös uuriti, kuidas on viis Haskellist tuntud tüübiklassi Catsis realiseeritud ning milliste probleemide lahendamist need lihtsustavad. Selle tulemusena valminud töö kirjalik osa kujutab endast sissejuhatavat materjali tüübiklassidega funktsionaalprogrammeerimisest Scalas. Seda täiendavad harjutusülesanded ja näidisprogramm.
dc.description.abstractScala is a multi-paradigm programming language running on a Javavirtual machine which allows to combine object-oriented and functional techniques. The disadvantage of Scala as a functional programming language is that its standard library is missing some useful abstractions – type classes which can be used to describe common properties of different types without the need to inherit them from the same superclass. To eliminate that disadvantage, a library named Cats containing those abstractions was created. The aim of this thesis is to research that library – study the implementations of five type classes that are already known from Haskell and describe the kind of problems they help to solve in Scala.The written part of this thesis provides an introduction to functional programming with type classes in Scala. In addition, practical exercises and an example program were written to complement the written part.
dc.identifier.urihttp://hdl.handle.net/10062/65642
dc.language.isoet
dc.titleTüübiklassidega funktsionaalprogrammeerimine Scalas
dc.title.alternativeFunctional Programming with Type Classes in Scala
dc.typeThesis

Files

Original bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
thesis.pdf
Size:
392.75 KB
Format:
Adobe Portable Document Format