Student Bogdan Bakarec odbranio je diplomski rad na temu „Implementacija MARC parsera korišćenjem parser kombinatora“

Student Računarskog fakulteta Bogdan Bakarec je 24. septembra 2020. godine odbranio diplomski rad na temu Implementacija MARC parsera korišćenjem parser kombinatora pred komisijom koju su činili: mentor dr Bojana Dimić Surla i član dr Dragan Urošević.
„U računarstvu, parsiranje teksta predstavlja proces analize niza simbola, pridržavajući se pravila određenih nekom formalnom gramatikom. To je tehnika koja se često koristi u računarstvu, i najpotrebnija je za pisanje kompajlera i interpretera programskih jezika. Pored ovoga, potreba za parserima se javlja u situacijama kada je potrebno proveriti pripadnost nekog tekstualnog zapisa željenom formatu. Parser predstavlja softversku komponentu koja kao ulaz prima neke podatke (najčešće tekst) na osnovu kojih kreira strukturu podataka sa nekom hijerarhijskom sutrkturom (najčešće ova struktura predstavlja stablo parsiranja ili apstraktno sintaksno stablo). Cilj ovog rada jeste opis implementacije parsera za bibliografske MARC formate, korišćenjem tehnike parser kombinatora. U kontekstu parser kombinatora, parser posmatramo kao funkciju koja kao argument prihvata string i kao povratnu vrednost daje neku strukturu podataka. Parser kombinator predstavlja neku vrstu agregacije više različitih parsera na osnovu koje se kreira novi parser“ – navedeno je u uvodu.
„Za parsiranje je namenski odabran programski jezik Haskell zbog koncepta lenje evaluacije koji je pogodan za korišćenje parser kombinatora. Parser kombinatori nam omogućavaju da na vrlo jednostavan način kreiramo kompleksan parser kombinovanjem i prostim slaganjem jednostavnih funkcija koje predstavljaju osnovne parsere, poput parsera za jedno slovo ili cifru. Takođe, parser kombinatori u Haskell-u su vrlo jednostavni za korišćenje i razumevanje sa aspekta programskog koda jer podsećaju na imperativnu programsku paradigmu. Sa druge strane, parser kombinatori imaju i svoje mane, od kojih je glavna lošija kompleksnost izvršavanja u najboljem slučaju u odnosu na parser generatore. Dalji rad bi mogao da obuhvati i kreiranje veb servisa od našeg alata, koji bi služio za integraciju sa nekim postojećim sistemom za snimanje i čitanje MARC zapisa iz baza podataka. Pored ovoga, poželjno bi bilo osmisliti i način na koji bi se podržalo pozivanje višestrukih promena nad MARC zapisima odjednom, poput ulančavanja operacija, kako bi se unapredio trenutni sistem gde je moguće vršiti samo jednu izmenu pri korišćenju aplikacije.“ – zaključio je Bogdan.
Fotografije sa odbrane nalaze se u galeriji. 

5953-student-bogdan-bakarec-odbranio-je-diplomski-rad-na-temu-implementacija-xa-marc-xa-parsera-koriscenjem-parser-kombinatora