Luca Dan Serbanati
     Compiler Techniques
     Faculty of Engineering in Foreign Languages.
     English Stream. Fourth year. Spring 2018
 
Email: luca@serbanati.com    URL: Personal website
General Information:


Course: 2h/week
Lab work: 1h/week = 2h/2weeks
Credit points: 4

Laboratory:

Prerequisites:
"Object-oriented Programming" and "Formal Languages and Automata" courses

Grading and workload
Our grade in the course will be earned / calculated as follows:
- Homework 30% and frequency(c/l) 10%
- Final exam 60%
Homeworks will be given roughly every week or two, and will each consist of a small number of exercises. Grades may also be adjusted upward slightly based on regular, positive contributions to class discussions.

Examination Policy
The comprehensive exam consists of a written answer to a quiz and a closed-book, two hours test consisting in designing and implementing some compiler components.

Lecture notes: not available

Textbooks:

1. L. D. Serbanati, Limbaje si compilatoare, Ed. Academiei RSR, 1987.
2. A.V.Aho, M.S. Lam , R.Sethi,J.D.Ullman, Compilers: Principles, Techniques, and Tools, Addison Wesley, Second edition, 2007
3. D. E. Knuth. Semantics of Context-free Languages. Mathematical Systems Theory, 2(2):127-145. Springer-Verlag, 1968. (Corrigenda: Mathematical Systems Theory 5, 1, 1971, 95-96.)


Schedule of Laboratory Topics and Homework
The lab assignments will require knowledge of materials covered by the course lectures.
Here you can find information on your work progress at this course.
Lab.# Week
Homework Topic
Lab. #1
Thu, 1 Mar
9h-11h
Lab. #1
Formal models in compiling
Exercises
Lab. #2
Thu, 8 Mar
9h-11h
Lab. #2
Lexical Analysis
Exercises
Lab. #3
Thu,15 Mar
9h-11h
Lab. #3
Top-down Syntactic Analysis
Exercises
Lab. #4
Thu, 22 Mar
9h-11h
Lab. #4
Bottom-up Syntactic Analysis
Exercises
YACC tutorial
Lab. #5
Thu,19 Apr
9h-11h
Lab. #5
Semantic Analysis
1.Exercises
2. Exercises
Lab. #6
Mon,23 Apr
16h-18h
Lab. #6
Type Checking
Intermediate Code Generation
exercises
Lab. #7
Thu,26 Apr
9h-11h
Final Examination
Review exercises

Lecture Schedule
Please note:
1.This schedule is subject to change
2. Look closely at this site for changes

Date/Time 
Lesson Topic 
Mon, 19 Feb
16h - 19h CJ205
Introduction to compiling.
- The structure of a compiler
- Formal models in compiling
- Programming language as formal languages.
Thu,22 Feb
9h - 12h CJ205
- Formal systems for translation:
a.Syntax-directed translation
b.Formal translator
Mon, 26 Feb
16h - 19h CJ205
-Attribute grammar
Thu, 1 Mar
11h - 12h
CJ205
Lexical analysis.
Mon,5 Mar
16h - 19h
CJ205
Syntax analysis.

Thu, 8 Mar
11h - 13h
CJ205
- Top-down parsing. Recursive-descent parsing.
- LL(1) grammars
Mon, 12Mar
16h - 19h
CJ205
- Bottom-up parsing
- LR Parsing.
- Grammars LR(0), SLR
Thu, 15 Mar 11h - 13h
CJ205
- LR Parsing.
- LR(1), LALR
Mon, 19 Mar 16h - 19h
CJ205
Semantic Analysis
Attribute Grammar
Syntax Directed Definition
Syntax-Directed Translation
Thu,22 Mar
11h - 12h
CJ205
Semantic Analysis
Mon,16 Apr
16h - 19h
CJ205
Semantic Analysis
Type Checking.
Thu,19 Apr
11h - 12h
CJ205
Type Checking.
Intermediate Code Generation.
Mon, 23 Apr
18h - 19h
CJ 205
Intermediate Code Generation.


Examinations
Exam Date Time/Room

Visits from 04 January 2005: 177936 Last update: 23 Mar 2018