Metody realizacji języków programowania

Z Studia Informatyczne
Wersja z dnia 21:43, 8 cze 2006 autorstwa Salwicki (dyskusja | edycje)
(różn.) ← poprzednia wersja | przejdź do aktualnej wersji (różn.) | następna wersja → (różn.)
Przejdź do nawigacjiPrzejdź do wyszukiwania

Autor sylabusa

prof. dr hab. Andrzej Salwicki salwicki@mimuw.edu.pl

Nazwa zajęć:

Metody Realizacji Języków Programowania

Typ zajęć:

wykład (30 godz.) + ćwiczenia (30 godz.)

Opis:

Celem wykładu jest przedstawienie najważniejszych algorytmów i struktur danych służących kompilacji i wykonywaniu skompilowanych programów. Omówione zostaną: maszyna wirtualna czyli środowisko wykonywania programów, tablica symboli, sposoby analizy składniowej: parsery LL(1) i LR(1), algorytmy syntezy kodu wynikowego.

Wymagania wstępne:

Programowanie obiektowe Języki, automaty i obliczenia

Sylabus:

Kompilator i maszyna wirtualna z lotu ptaka Analiza leksykalna. Analiza składniowa zstępująca i wstępująca Tablica symboli. Statyczna analiza semantyczna Środowisko czasu wykonania: rekordy aktywacji i obiekty. Kompilacja sterowana składnią. Reguły semantyczne. Kod pośredni. Postać SSA kodu pośredniego Optymalizacja kodu Zarządzanie pamięcią – tworzenie jednostek dynamicznych i odśmiecanie Obsługa systuacji wyjątkowych i zarządzanie wątkami w procesach współbieżnych i rozproszonych

Literatura:

A. Aho, R. Sethi, J. Ullman. Kompilatory. WNT, 2001. W. Waite, G. Goos, Konstrukcja kompilatorów, WNT, 1989 D. Gries Konstrukcja translatorów dla maszyn cyfrowych ,WNT, 1984 Internet