Student Računarskog fakulteta Bogdan Blečić je u sredu, 27. decembra 2023. godine odbranio diplomski rad na temu Primena monada u funkcionalnomprogramiranju pred komisijom koju su činili mentor dr Bojana Dimić Surla i član dr Mladen Zekić.
U uvodu svog rada Bogdan je istakao sledeće:
Programski jezici se najšire mogu klasifikovati prema svojstvima koje imaju na dve glavne paradigme: imperativnu i deklarativnu. Imperativna paradigma podrazumeva da programer eksplicitno navodi korake koje program treba da izvrši. Kod deklarativne paradigme, s druge strane, programer definiše krajnja svojstva željenog rezultata, ne definišući način kako do tog rezultata treba da dođe. Posebna podvrsta deklarativnih programskih jezika su funkcionalni programski jezici, kod kojih se program može tretirati kao niz aplikacija i kompozicija manjih funkcija. Funkcionalni jezici se dalje mogu klasifikovati na „čiste“ funkcionalne jezike koji ne dozvoljavaju bočne (spoljne, propratne) efekte, i „nečiste“ koji ih dozvoljavaju. U narednom delu rada fokus će biti upravo na čistim funkcionalnim jezicima, konkretno Haskelu. Cilj ovog rada je da prikaže kako se upotrebom monada i monadskih tipova mogu prevazići ograničenja nametnuta samom prirodom funkconalnih jezika.
…
Monade su jedan od osnovnih i najzastupljenijih koncepata u Haskelu. Glavna osobina monada je da omogućavaju da se proizvoljnim tipovima dodele dodatna svojstva, odnosno da se podignu u kontekst monade. Mogućnost kombinovanja monadskih vrednosti i kom ponovanja monadskih funkcija je ono što monade čini moćnim alatom za modelovanje šablona koji se često javlja u programiranju – niz operacija nad podacima, gde se rezultat svake operacije propagira kao ulaz narednoj operaciji. – zaključio je Bogdan.
Fotografije sa odbrane dostupne su u galeriji.