Студент Рачунарског факултета Богдан Блечић је у среду, 27. децембра 2023. године одбранио дипломски рад на тему Примена монада у функционалном програмирању пред комисијом коју су чинили ментор др Бојана Димић Сурла и члан др Младен Зекић.
У уводу свог рада Богдан је истакао следеће:
Програмски језици се најшире могу класификовати према својствима које имају на две главне парадигме: императивну и декларативну. Императивна парадигма подразумева да програмер експлицитно наводи кораке које програм треба да изврши. Код декларативне парадигме, с друге стране, програмер дефинише крајња својства жељеног резултата, не дефинишући начин како до тог резултата треба да дође. Посебна подврста декларативних програмских језика су функционални програмски језици, код којих се програм може третирати као низ апликација и композиција мањих функција. Функционални језици се даље могу класификовати на „чисте“ функционалне језике који не дозвољавају бочне (спољне, пропратне) ефекте, и „нечисте“ који их дозвољавају. У наредном делу рада фокус ће бити управо на чистим функционалним језицима, конкретно Хаскелу. Циљ овог рада је да прикаже како се употребом монада и монадских типова могу превазићи ограничења наметнута самом природом функцоналних језика.
…
Монаде су један од основних и најзаступљенијих концепата у Хаскелу. Главна особина монада је да омогућавају да се произвољним типовима доделе додатна својства, односно да се подигну у контекст монаде. Могућност комбиновања монадских вредности и ком поновања монадских функција је оно што монаде чини моћним алатом за моделовање шаблона који се често јавља у програмирању – низ операција над подацима, где се резултат сваке операције пропагира као улаз наредној операцији. – закључио је Богдан.
Фотографије са одбране доступне су у галерији.