Course title
P05005003
Programming Language Processor

suzuki tetsuya Click to show questionnaire result at 2019
Course description
Programming language processors are indispensable tools in software development. This course will discuss fundamental theories and implementation methods of them.
Purpose of class
The purpose of this class is to understand fundamental theories and implementation methods of programming language processors.
Goals and objectives
  1. 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)
  2. Understand how to translate from high level programming languages to low level languages, and the mechanism of virtual machines (stack machine)
  3. Understand how to implement a simple compiler
Language
Japanese
Class schedule

Class schedule HW assignments (Including preparation and review of the class.) Amount of Time Required
1. Introduction to programming language processors
A simple compiler
Chapter 1 and 2 of the textbook 190minutes
2. Syntax and language (1) Chapter 3 (P29-P37) of the textbook 190minutes
3. Syntax and language (2) Chapter 3 (P37-P45) of the textbook 190minutes
4. Exercise (1) Review the lesson 190minutes
5. Lexical analysis (1) Chapter 4 (P47-P54) of the textbook 190minutes
6. Lexical analysis (2) Chapter 4 (P54-P58) of the textbook 190minutes
7. Lexical analysis (3) Chapter 4 (P59-P73) of the textnook 190minutes
8. Syntax analysis (1) Chapter 5 (P75-P88) of the textbook 190minutes
9. Syntax analysis (2) Chapter 5 (P88-P98) of the textbook 190minutes
10. Semantic analysis Chapter 6 190minutes
11. Error handling Chapter 7 190minutes
12. Virtual machine and interpreter Chapter 8 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
中田育男著、新コンピュータサイエンス講座「コンパイラ」、オーム社、ISBN4-274-13013-4
Prerequisites
Date Structures and Algorithms 1
Date Structures and Algorithms 2
Information Processing 2
Exercises in Information Processing 2
Office hours and How to contact professors for questions
  • Lunch break on Wednesday
  • E-mail
Regionally-oriented
Non-regionally-oriented course
Development of social and professional independence
  • Course that cultivates an ability for utilizing knowledge
Active-learning course
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 該当しない
Education related SDGs:the Sustainable Development Goals
  • 4.QUALITY EDUCATION
  • 9.INDUSTRY, INNOVATION AND INFRASTRUCTURE
Last modified : Sat Mar 21 12:36:03 JST 2020