Ects: 4
Predavanja: 2
Vježbi: 2

Cilj predmeta:

Stjecanje temeljnih znanja iz discipline formalnih jezika, posebno iz teorije sintaksne analize jezika za programiranje i teorije prevođenja.

Sadržaj predmeta:

1) Uvod. 2) Elementi teorije formalnih jezika. 3) Gramatike. 4) Izvođenje i transformiranje gramatika. 5) Uvod u teoriju automata. 6) Općeniti postupci sintaksne analize. 7) Jednoprolazna sintaksna analiza. 8) Jezici sa svojstvima. 9) Jezici za programiranje. 10) Uvod u prevođenje. 11) Leksička analiza. 12) Sintaksna analiza jezika za programiranje. 13) Prevođenje: interpretatori i predprocesori. 14) Interpretator jezika PL/0. 15) Predprocesor jezika DDH.

Kompetencije:

Analiza postojećih jezika te definiranje njihove leksičke i sintaktičke strukture. Osmišljavanje novog programskog jezika i kreiranje njegovog prevodioca.

Ishodi učenja:

Student će, nakon polaganja ovog predmeta moći: 1) Definirati regularni izraz koji generira regularne jezike. 2) Izvesti gramatiku beskontekstnog ili kontekstnog jezika, te jezika bez ograničenja. 3) Koristiti algoritme u transformiranju beskontekstnih gramatika. 4) Konstruirati program izravne leksičke analize mini jezika za programiranje. 5) Konstruirati parser ili prepoznavač mini jezika za programiranje. 6) Razumjeti ustrojstvo interpretatora na primjeru jezika PL/0. 7) Razumjeti ustrojstvo predprocesora jezika DDH.