 |
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, Lab #2
Thu, 27 Feb
9h-11h
|
Lab. #1 Lab.#2
Formal models in compiling
1. Exercises
2. Exercises
|
Lab. #3
Thu, 5 Mar
9h-11h
|
Lab. #3
Lexical Analysis
Exercises
|
Lab. #4
Thu,12 Mar
online
|
Lab. #4
Top-down Syntactic Analysis
Exercises
|
Lab. #5
Thu, 19 Mar online |
Lab. #5
Bottom-up Syntactic Analysis
Exercises
YACC tutorial
|
Lab. #6
Thu, 26 Mar online |
Lab. #6
Semantic Analysis
Exercises
|
Lab. #7
Thu,2 April
online |
Lab. #7
Type Checking Intermediate Code Generation
Exercises
|
Lab. #8 Thu,14 May
online |
Lab. #8 Review
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,17 Feb
17h - 20h CJ205 |
Introduction to compiling.
- The structure of a compiler
- Formal models in compiling
- Programming language as formal languages.
|
Thu,20 Feb
9h - 13h CJ205 |
Attribute Grammars Lexical analysis.
|
Mon, 24 Feb
17h - 20h CJ205
|
Parsing
Top-down parsing.
Recursive-descent parser.
|
Thu, 27 Feb
11h - 13h
CJ205
|
LL(1) Grammars.
|
Mon,2 Mar
17h - 20h
CJ205
|
Bottom-up parsing. LR Grammars
|
Thu, 5 Mar
11h - 13h
CJ205
|
LR parsing with ambiguous grammars.
|
Mon, 9Mar
17h - 20h
CJ205
|
Semantic Analysis
|
Thu, 12 Mar
11h - 13h
online
|
Syntax Directed Definition
Syntax-Directed Translation
|
Mon,16 Mar 17h-19h
online
|
Syntax-Directed Translation |
Thu,19 Mar 11h-13h
online
|
Syntax-Directed Translation Intermediate Code Generation. |
Mon,23 Mar 17h-20h
online
|
Intermediate Code Generation. Type Checking. |
Examinations
Exam Date |
Time/Room |
21 May 17h online |
|
|
|