Форум Поща Карта на сайта Търсене Връзки Контакти
Начало Обучение Избираеми дисциплини Oбщ списък на избираемите дисциплини и практикуми Разработване на компилатори (Практикум)    English
Факултет по математика и информатика - Разработване на компилатори (Практикум)

 Лектор  Маркус Льобербауер; доц. д-р Росица Донева
Анотация
     This course goes through all phases of a compiler. It shows the theoretical concepts underlying each phase as well as how to implement it efficiently. The students will write a small compiler for a C#-like programming language (Z#). It will translate a source program into the code of a virtual machine (CLR). The implementation language will be C#.
Съдържание

1. Overview (39 slides): compilers and interpreters, structure of a compiler, single-pass vs. multi-pass compilers

2. Scanning (21 slides): finite automata, scanner implementation

3. Parsing (52 slides): recursive descent parsing, push down automata, terminal start symbols and successors, LL(1) condition, implementation of a parser

4. Semantic Analysis (31 slides): syntax-directed translation, attribute grammars

5. Symbol Table Handling (37 slides):symbols, types, scopes

6. Code Generation (80 slides)

Extension Material:

1. LALR parsing (49 slides): LALR(1) table generation, optimizations, semantics, error handling

2. Compiler Generators (29 slides): lex/yacc, Coco/R

Актуално
Още новини
Архив на новините
© 2009 ФМИ