Universitatea Babeş-Bolyai Cluj-Napoca
Facultatea de Matematică şi Informatică
Ciclul de studii: Licenţă
Domeniul: Informatică
Programul de studii: Informatică - linia de studiu română
Limba de predare: Română

SYLLABUS

I. Date generale
Codul	Disciplina	
MIF0003	Limbaje formale şi tehnici de compilare	

Semestrul	Ore: C+S+L	Categoria	Statutul	
5	2+1+2	specialitate	obligatorie	

II. Cadre didactice cu norma de bază în Universitate
Numele şi	Titlul	Gradul	Catedra	Tipul activităţii	
prenumele	ştiinţific	didactic		C	S	L	
MOTOGNA Simona Claudia	Dr. 	Conf.	Limbaje şi Metode de Programare	*			

Cadre didactice asociate
Numele şi	Titlul	Instituţia	Tipul	Tipul activităţii	
prenumele	ştiinţific		postului	C	S	L	

III. Obiectivele disciplinei
Gramatici si limbaje; clasificarea lui Chomsky; gramatici regulare, automate finite si echivalenta lor; gramatici independente de context, automate push-down si echivalenta lor.
Notiuni de costructia compilatoarelor: fazele compilarii, analiza lexicala, analiza sintactica, analiza semantica.	

IV. Conţinutul disciplinei
I. Gramatici, limbaje, automate

Gramatici regulare si automate finite
Gramatici independente de context  si automate pushdown
Automate Turing
Gramatici speciale - gramatici LR(k), LL(k), gramatici de precedenta

II. Compilatoare

Prezentarea generala a problemelor proiectarii si implementarii limbajelor
de programare
Analiza lexicala
Analiza sintactica - metode ascendente, metode descendente	

V. Bibliografie
1. A.V. AHO, D.J. ULLMAN - Principles of computer design, Addison-Wesley, 1978.
2. A.V. AHO, D.J. ULLMAN - The theory of parsing, translation and compiling, Prentice-Hall, Engl. Cliffs., N.J., 1972, 1973.
3. MOTOGNA, S. – Metode de proiectare a compilatoarelor, Ed. Albastra, 2006
3. D. GRIES - Compiler construction for digital computers,, John Wiley, New York, 1971.
4. SIPSER, M., Introduction to the theory of computation, PWS Pulb. Co., 1997. 
5. G. MOLDOVAN, V. CIOBAN, M. LUPEA - Limbaje formale si automate. Culegere de probleme, Univ. Babes-Bolyai, Cluj-Napoca, 1996.,l http://math.ubbcluj.ro/~infodist/alf/INDEX.HTM
6. CSÖRNYEI ZOLTÁN, Bevezetés a fordítóprogramok elméletébe, I, II., ELTE, Budapest, 1996
7. L.D. SERBANATI - Limbaje de programare si compilatoare, Ed. Academiei RSR, 1987.
8. CSÖRNYEI ZOLTÁN, Fordítási algoritmusok, Erdélyi Tankönyvtanács, Kolozsvár, 2000.
9. DEMETROVICS JÁNOS-DENEV, J.-PAVLOV, R., A számítástudomány matematikai alapjai, Nemzeti Tankönyvkiadó, Budapest, 1999	

VI. Tematica activităţilor didactice pe săptămâni
Sapt. 1. Structura generala a unui compilator. Fazele compilarii
Sapt. 2. Analiza lexicala
Sapt. 3. Notiuni introductive de limbaje formale. Gramatici
Sapt. 4. Automate finite
Sapt. 5. Echivalenta dintre automate finite si gramatici regulare
Sapt. 6. Limbaj regular, expresii regulare, echivalenta cu automate finite si gramatici regulare. Lema de pompare
Sapt. 7. Gramatici independente de context, arbore de analiza sintactica
Sapt. 8. Automate Push-down
Sapt. 9. Analiza sintactica: notiuni generale, clasificare
Sapt. 10. Analizor sintactic descendent cu reveniri
Sapt. 11. Analizor sintactic LL(1): constructia multimilor First, Follow ai a tebelului  LL(1)
Sapt. 12. Analizor sintactic LR(k). Analizor sintactic LR(0): algoritmi pentru closure, goto si colectie canonica
Sapt. 13. Analizori sintactici SLR, LR(1) si LALR 
Sapt. 14. Subiect rezervat	

VII. Metode didactice folosite
Cursul se bazeaza pe urmatoarele metode: expunere, conversatie, demonstratie didactica, modelare. Seminarul se va concentra pe algoritmizare, descoperire si studiu de caz. Laboratorul va folosui algortimizarea, implemenatrea si studiul de caz.	

VIII. Evaluare
Nota finala obtinuta la aceasta disciplina va reflecta atat activitatea la seminar si la laborator cat si cunsotiintele acumulate de studenti.
Nota finala se calculeaza astfel:
25% nota_laborator + 75% nota_examen (incluzand si activitatea la seminar).

IX. Bibliografie suplimentară
[Lex si yacc] http://dinosaur.compilertools.net/	

	Decan,							Sef de catedra,

	Data,							Titular curs,
								Conf. Dr.  MOTOGNA Simona Claudia