109年第1學期-8103 程式語言與編譯器 課程資訊

評分方式

評分項目 配分比例 說明
midterm 15
final 15
homework/quiz 70

選課分析

本課程名額為 70人,已有18 人選讀,尚餘名額52人。


登入後可進行最愛課程追蹤 [按此登入]。

授課教師

許宏誌

教育目標

At the end of this course, students should be able to: 1. Understand the principles and techniques of automatic program generators. 2. Understand lexical analysis and implement a scanner for a simple language using a scanner generator. 3. Understand syntax analysis and implement a parser for a simple language using a parser generator. 4. Understand semantic analysis and implement an abstract syntax tree constructor for a simple language using a bottom-up translator generator. 5. Understand intermediate code generation and implement a pretty printer for a simple language using a recursive evaluator. 6. Understand code generation and implement a code generator for a simple language using a recursive evaluator. 7. Understand principles of functional, imperative, and logic programming languages. 8. Understand meta-circular interpreters, semantics (operational and denotational), type systems (polymorphism, inference, and abstract types), object oriented programming. Programming language representation: concrete and abstract syntax, context free grammars. Use of lexer and parser generators. Implementation of expressions and statements in a simple language by postfix code and by simple machine code; simple optimizations. Procedures: value, name and reference parameters, local and non-local variables, static and dynamic binding. Abstract machines and storage management: activation records, static and dynamic chains, stacks and heaps.

課程資訊

參考書目

class note/self editing

開課紀錄

您可查詢過去本課程開課紀錄。 程式語言與編譯器歷史開課紀錄查詢