Course title
L0940200
Compiler

sugimoto tooru Click to show questionnaire result at 2017
Course description
Functions, structures and implementations of compilers, software that processes programming languages, are explained.
Purpose of class
By learning compilers, students will understand deeply mechanisms of programming languages.
Goals and objectives
  1. To understand functions of compilers
  2. To understand programming languages from a viewpoint of a compiler designer
  3. To understand structures of compilers
  4. To understand implementations of compilers
Language
Japanese
Class schedule

Class schedule HW assignments (Including preparation and review of the class.) Amount of Time Required
1. Overview of compilers textbook chap. 1 90minutes
exercises 90minutes
2. Simple example of a compiler textbook chap. 2 90minutes
review 90minutes
3. Grammar and language textbook chap. 3 90minutes
exercises 90minutes
4. Lexical analyzer (1) : reading tokens, regular expressions and finite automaton textbook chap. 4 90minutes
exercises 90minutes
5. Lexical analyzer (2) : exercises textbook chap. 4 90minutes
exercises 90minutes
6. Parsing (1) : top-down parsing textbook chap. 5 90minutes
review 90minutes
7. Parsing (2) : recursive top-down parsing textbook chap. 5 90minutes
exercises 90minutes
8. Parsing (3) : exercises textbook chap. 5 90minutes
review 90minutes
9. Intermediate exam and comments review 180minutes
10. Semantic analyzer : semantic analysis, symbol table, block structure textbook chap. 6 90minutes
exercises 90minutes
11. Virtual machines and interpreter (1) : implementation of virtual machines textbook chap. 7 90minutes
exercises 90minutes
12. Virtual machines and interpreter (2) : code generation and interpreter textbook chap. 8 90minutes
exercises 90minutes
13. Advanced topics : real compilers, optimization consult related matters 90minutes
review 90minutes
14. Final exam and comments review all 180minutes
Total. - - 2520minutes
Relationship between 'Goals and Objectives' and 'Course Outcomes'

mini tests and assignments intermediate exam final exam Total.
1. 10% 10%
2. 5% 10% 5% 20%
3. 5% 10% 15% 30%
4. 10% 10% 20% 40%
Total. 20% 40% 40% -
Evaluation method and criteria
Mini tests and assignments (20%), intermediate exam (40%) and final exam (40%)
Textbooks and reference materials
I. Nakata, "Compilers", Ohm-sha, 1995.
Prerequisites
Required: knowledge about C language.
Desirable: Formal language and automaton, programming language theory.
Office hours and How to contact professors for questions
  • Monday, lunch break
Relation to the environment
Non-environment-related course
Regionally-oriented
Non-regionally-oriented course
Development of social and professional independence
  • Non-social and professional independence development course
Active-learning course
More than one class is interactive
Last modified : Wed Oct 17 06:49:39 JST 2018