Faculty of Engineering - Ain Shams University, Home
Compilers
What Will Learn?
-
Course AimsThe aim of this course is to: Enrich the student knowledge about the theory of programming language processors, finite automata, regular expressions, context-free grammars, lexical analysis,syntax analysis,semanticanalysis,intermediate representations, codegenerationand optimization.
-
Course Goals
- Decent Work and Economic Growth
- Industry, Innovation and Infrastructure
- Sustainable Cities and Communities
Requirements
CSE333s
Description
-
English Description
Programs related to compilers, The translation process, Compiler major data structures, Phases of the compilers. TINY language. Fundamental concepts in automata theory and formal languages, Deterministic and nondeterministic finite automata. Lexical analysis: Scanning, Regular expressions, From regular expressions to DFAs, converting NFA to DFA, The LEX tool. Parser and symbol table, Token, Lexeme, Patterns. The parsing process: Context-Free Grammars (CFGs), Parse trees and abstract syntax trees, Ambiguity. Syntax analysis: CFGs, Ambiguity, Precedence, Top-down parsing, Recursive descent parsing, Predictive parsing, LL(1) parsing, First and follow Sets. Bottom up parsing, LR parsers.LR(0) parsing. SLR(l) parsing. -
Arabic Description
Programs related to compilers, The translation process, Compiler major data structures, Phases of the compilers. TINY language. Fundamental concepts in automata theory and formal languages, Deterministic and nondeterministic finite automata. Lexical analysis: Scanning, Regular expressions, From regular expressions to DFAs, converting NFA to DFA, The LEX tool. Parser and symbol table, Token, Lexeme, Patterns. The parsing process: Context-Free Grammars (CFGs), Parse trees and abstract syntax trees, Ambiguity. Syntax analysis: CFGs, Ambiguity, Precedence, Top-down parsing, Recursive descent parsing, Predictive parsing, LL(1) parsing, First and follow Sets. Bottom up parsing, LR parsers.LR(0) parsing. SLR(l) parsing.
-
DepartmentComputer and Systems Engineering
-
Credit Hours2
-
GradesTotal ( 100 ) = Midterm (20) + tr.Student Activities (30 = tr.Industry 0% , tr.Project 10% , tr.Self_learning 0% , tr.Seminar 20% ) + Exam Grade (50)
-
HoursLecture Hours: 2, Tutorial Hours: 1, Lab Hours: 0
-
Required SWL100
-
Equivalent ECTS4
- 1. Compiler Construction: Principles and Practice, Kenneth C. Louden, 2019, PWS Publishing Company , ISBN 0-534-93972-4
- 2. Compilers: Principles, Techniques, and Tools , by Monica S. Lam, R. Sethi, Jeffrey D. Ullman, A.V. Aho, 2013. - Compiler Construction Principles and Practice, Kenneth C. Louden, 1998.