P2680500
3 Programming Language Processor
Programming language processors are indispensable tools in software development. This course will discuss fundamental theories
and implementation methods of them.
The purpose of this class is to understand fundamental theories and implementation methods of programming language processors.
- Understand fundamental theories of programming language processing (regular expression, context-free grammar, LL(1) grammar,
syntax diagram, non-deterministic finite automata, deterministic finite automata, recursive decent parser)
- Understand how to translate from high level programming languages to low level languages, and the mechanism of virtual machines
(stack machine)
- Understand how to implement a simple compiler
|
Class schedule |
HW assignments (Including preparation and review of the class.) |
Amount of Time Required |
1. |
Introduction to programming language processors A simple compiler
|
Read the syllabus |
190minutes |
2. |
Syntax and language (1) |
Review the lesson |
190minutes |
3. |
Syntax and language (2) |
Review the lesson |
190minutes |
4. |
Exercise (1) |
Review the lesson |
190minutes |
5. |
Lexical analysis (1) |
Review the lesson |
190minutes |
6. |
Lexical analysis (2) |
Review the lesson |
190minutes |
7. |
Lexical analysis (3) |
Review the lesson |
190minutes |
8. |
Syntax analysis (1) |
Review the lesson |
190minutes |
9. |
Syntax analysis (2) |
Review the lesson |
190minutes |
10. |
Semantic analysis |
Review the lesson |
190minutes |
11. |
Error handling |
Review the lesson |
190minutes |
12. |
Virtual machine and interpreter |
Review the lesson |
190minutes |
13. |
Exercise (2) |
Review the lesson |
190minutes |
14. |
Conclusion and examination |
Review the lesson |
190minutes |
Total. |
- |
- |
2660minutes |
Relationship between 'Goals and Objectives' and 'Course Outcomes'
|
Report |
Examination |
Total. |
1. |
10% |
25% |
35% |
2. |
15% |
15% |
30% |
3. |
25% |
10% |
35% |
Total. |
50% |
50% |
- |
Evaluation method and criteria
Reports (50%) and an examination (50%)
Textbooks and reference materials
Materials will be provided.
Basic C programming skills, and basic knowledge of data structures and algorithm
Office hours and How to contact professors for questions
Relation to the environment
Non-environment-related course
Non-regionally-oriented course
Development of social and professional independence
- Course that cultivates an ability for utilizing knowledge
More than one class is interactive
Course by professor with work experience
Work experience |
Work experience and relevance to the course content if applicatable |
N/A |
N/A |
Last modified : Fri Oct 25 04:04:39 JST 2019