| Course Type | Elective Course |
| Course Level | Master's Degree With Thesis |
| Year of Study | - |
| Semester | - |
| ECTS | 10 |
| Name of Lecturer(s) |
- |
| Learning Outcomes |
At the end of this course, the students;
- Knowledge about the compiler, and lexical analysis.
- Learn the rules of syntax of programming languages.
- Knows the basic parsing techniques.
- Will have information about memory management.
- Learn to code generation and optimization.
|
| Mode of Delivery | Face to face |
| Prerequisites | No |
| Recommended Optional Programme Components | None |
| Course Description | Introduction to compilers, finite automata and lexical analysis. Syntax definitions of programming languages. Basic parsing methods. Design of efficient parsers. Symbol tables. Run-time memory management. Code generation and optimization. |
| Course Contents |
| WEEK |
TOPICS |
|
1st Week |
Introduction to compilers, finite automata and lexical analysis. |
|
2nd Week |
Introduction to compilers, finite automata and lexical analysis. |
|
3rd Week |
Introduction to compilers, finite automata and lexical analysis. |
|
4th Week |
Syntax definitions of programming languages. |
|
5th Week |
Syntax definitions of programming languages. |
|
6th Week |
Basic parsing methods. |
|
7th Week |
Basic parsing methods. |
|
8th Week |
Mid-term |
|
9th Week |
Design of efficient parsers. |
|
10th Week |
Symbol tables. |
|
11th Week |
Run-time memory management. |
|
12th Week |
Run-time memory management. |
|
13th Week |
Code generation and optimization. |
|
14th Week |
Code generation and optimization. |
|
| Recommended or Required Reading | 1. M. Steven S., Advanced Compiler Design İmplementation, Morgan Kaufmann Publishers Inc., 1997
2. G. Dick, Modern Compiler Design, Wiley,2001
3. Levine, Mason, Brown, Lex and Yacc, O'Reilly & Associates, 1995.
|
| Planned Learning Activities and Teaching Methods |
- Lecture
- Questions/Answers
- Presentation
- Practice
- Problem Solving
- Project
- Report Preparation
|
| Assessment Methods and Criteria |
|
Quantity |
Percentage (%) |
| Mid-term |
1 |
30 |
| Assignment |
1 |
15 |
| Project |
1 |
15 |
| Total(%) |
|
60 |
| Contribution of In-term Studies to Overall Grade(%) |
|
60 |
| Contribution of Final Examination to Overall Grade(%) |
|
40 |
| Total(%) |
|
100 |
|
| ECTS Allocated Based on Student Workload |
| Activities |
Quantity |
Duration (Hour) |
Total Workload (Hour) |
| Midterm exam |
1 |
2 |
2 |
| Preparation for Quiz |
|
|
|
| Individual or group work |
14 |
11 |
154 |
| Preparation for Final exam |
1 |
69 |
69 |
| Course hours |
14 |
3 |
42 |
| Preparation for Midterm exam |
1 |
44 |
44 |
| Laboratory (including preparation) |
|
|
|
| Final exam |
1 |
2 |
2 |
| Homework |
|
|
|
| Total Work Load | 313 |
| Total Work Load / 30 (h) | 10.43 |
| ECTS Credit of the Course | 10 |
|
| Language of Instruction | Turkish |
| Work Placement(s) | No |