Course title
P26805003
Programming Language Processor

suzuki tetsuya Click to show questionnaire result at 2018
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
English
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
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.
Prerequisites
Basic C programming skills, and basic knowledge of data structures and algorithm
Office hours and How to contact professors for questions
  • Lunch break on Wednesday
Relation to the environment
Non-environment-related course
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 N/A
Last modified : Fri Oct 25 04:04:39 JST 2019