Compiler Construction zima 2015/16

Język wykładowy Angielski
Opiekun Jean Marie de Nivelle
Liczba godzin 30 (wyk.) 30 (ćw.)
Rodzaj I2.T - teoria inf.
ECTS 6
Polecany dla I roku Nie
Egzamin Tak
Tagi JP (języki programowania i logika)

Opis przedmiotu:

**Program:** The lecture covers the following topics: * General introduction, Organization of lectures. History of higher programming languages. * Why hacking is not a solution. We write a simple program for parsing and evaluating numerical expressions, and observe that this quite is difficult. We identify some components of the program. (2-3 lectures) * Parsing through attribute grammars. LR(1) parsing, LALR parsing. Standard tools for parsing (Yacc/Bison) Parsing with user defined operators. Printing of expressions. * Tokenizing with NDFAs. * How to compile C and C++. Type systems for C and C++. * Abstract Interpretation. This is a technique for predicting properties of variables at runtime. (For example that they are constant, initialized, within certain bounds, of a certain type, etc.) It is used for compiler optimization. * Static Single Assignment normal form. Code optimization techniques. Register assignment. * Code generation by tree matching * Garbage collection. **Wymagania:** Knowledge of C or C++. Knowledge of a functional language.

Wykłady

Lista
Prowadzący Termin zajęć Limit Zapisani Kolejka
Jean Marie de Nivelle
śr 14:15-16:00 (s. 141) 40 25 0

UWAGA! Wyższa liczba oznacza wyższy priorytet, po zapisaniu do grupy zostajemy usunięci z kolejek o niższym priorytecie.

Pracownie

Lista
Prowadzący Termin zajęć Limit Zapisani Kolejka
Jean Marie de Nivelle
śr 16:15-18:00 (s. 137) 15 16 0
Krystian Bacławski
cz 10:15-12:00 (s. 137) 15 8 0

UWAGA! Wyższa liczba oznacza wyższy priorytet, po zapisaniu do grupy zostajemy usunięci z kolejek o niższym priorytecie.


Konsultacje prowadzących:


Imię i nazwisko Pokój Konsultacje
Krystian Bacławski 324 Przy użyciu MS Teams, wyłącznie po uprzednim umówieniu się drogą elektroniczną. Dostępny termin na konsultacje to poniedziałek 16-18.
Jean Marie de Nivelle 326 Tuesdays 14.00-16.00. (Other times is also possible. Please ask by email.)