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
Relationship between 'Goals and Objectives' and 'Course Outcomes'

Reports and mini tests Total.
1. 35% 35%
2. 30% 30%
3. 35% 35%
Total. 100% -
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 Chapter 3 of the textbook 190minutes
3. Programming exercise (1) Review the lessons 190minutes
4. Lexical analysis (1) Chapter 4 (P49-P60) of the textbook 190minutes
5. Lexical analysis (2) Chapter 4 (P60-P64) of the textbook 190minutes
6. Lexical analysis (3)
Programming exercise
Review the lessons 190minutes
7. Syntax analysis (1) Chapter 5 (P77-P89) of the textbook 190minutes
8. Syntax analysis (2) Chapter 5 (P89-P100) of the textbook 190minutes
9. Syntax analysis (3)
Programming exercise
Review the lessons 190minutes
10. Semantic analysis
Error handling
Virtual machine and interpreter (1)
Chapter 6, 7, and 8 (P129-P132) of the textbook 190minutes
11. Virtual machine and interpreter (2) Chapter 8 (P132-P148) of the textbook 190minutes
12. Programming exercise Review the lessons 190minutes
13. Programming exercise Review the lessons 190minutes
14. Optimization Review the lesson 190minutes
Total. - - 2660minutes
Evaluation method and criteria
Students will be evaluated based on reports and mini tests.
Feedback on exams, assignments, etc.
ways of feedback specific contents about "Other"
Feedback in the class
Textbooks and reference materials
中田育男著、新コンピュータサイエンス講座「コンパイラ」、オーム社、ISBN4-274-13013-4
Prerequisites
Basic programming skills and basic knowledge of data structures and algorithm
Office hours and How to contact professors for questions
  • Lunch break on Friday
  • 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 applicable
N/A 該当しない
Education related SDGs:the Sustainable Development Goals
  • 9.INDUSTRY, INNOVATION AND INFRASTRUCTURE
Last modified : Thu Feb 27 10:50:34 JST 2025