Document - Oman College of Management & Technology

advertisement
Oman College of Management & Technology
Department of Computer Science
Baraka, Oman
Tel. (968) 26893366
Fax (968) 26893068
(503402) Compiler Construction
Course Code : 503402
Course Name : Compiler Construction
Semester / Session : Second 2015/2016
Credit Hours : 3 Hrs
Course Prerequisites : 503202
Class sections and Lecturers:
Section 10– 11:30 Mon, Wed: 231 Loay AlNeamy
Instructors Office Hours:
Email:
Office Location:
Office Hours:
Website:
[email protected]
225
Sun, Tue, Thru: 10:30-11:30, 13:30-14:30
Mon, Wed: 13 – 14:30
www.omancollege.edu.om/loay
Course Description
Basic concepts, compiler components, lexical analysis, symbol tables handling, parsing techniques, error
handling and recovery, syntax-directed translation, type checking, run-time organization, intermediate code
generation, code generation, code optimization.
Course objectives
1. Introducing students to the concepts and principles of compiler design.
2. Providing students with basic understanding of grammars and language definition.
3. Introducing students to the various phases of designing a compiler.
4. Introducing students to the various programming techniques and structures used in compiler
construction.
5. Providing students with practical programming skills necessary for constructing a compiler
Learning Outcomes
After completing this course the student should be able to:
1. Proficiency with lexical analysis methods and tools.
2. Proficiency with parsing methods and tools.
3. Proficiency with basic issues of semantic analysis.
4. Familiarity with methods for code generation.
5. Ability to work successfully on a team.
6. Further proficiency with software design in high-level languages.
Teaching Methods
The course will be based on the following teaching and learning activities:
 Power point presentations that covers the theoretical part
 Review questions
 Lab sessions
Course Time Table:
Week
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Subjects
An overview of Compiler Construction
Environment of the compiler
Passes front end back end
Retargetable compiler
Lexical Analysis
Regular expressions and finite state machines (First Exam)
Lexical analysis techniques
Symbol Table Construction
Symbol table organization
Storing identifiers
Syntax Analysis (Second Exam)
Grammars and language definition (BNF grammar, syntax diagrams)
Top-down parsing; bottom-up parsing. LL vs. LR parsing
recursive descent parsing; predictive parsing (table driven and operator precedence driven
parsing)
Intermediate Code Generation
Final Exam
Evaluation Plan
Modes Of Assessment
First Exam
Second Exam
Assignments
Final Exam
Score
20%
20%
10%
50%
* Makeup exams will be offered for valid reasons only. Makeup exams may be different from regular exams in content and
format.
Attendance Policy
Lecture attendance is mandatory. Students are allowed maximally of 15% absentia of the total module
hours.
Teaching Resources
Main Textbook : Compiler Construction/ by Thomas W. Parsons. New York : Computer Science
Press, 1992.
Recommended Books: Principle of compiler design/ by Aho, A.,Addison-Wesley 1997.
Compiler Construction/ by Thomas W. Parsons. New York :
Computer Science Press, 1992.
Download