Metody realizacji języków programowania/MRJP Wykład 1

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania

Wstep

Wykład ten stanowi uzupełnienie wykładu Techniki Kompilacji.

Nasz czytelnik mógł się zorientować, że w poprzednim wykładzie nacisk jest położony na analizę leksykalną i analizę składniową wykonywane podczas kompilacji. Te zadania analizy wystepują nie tylko podczas kompilacji ale także w wielu innych programach. Niektóre aplikacje tworzone przez Ciebie czytelniku będą być może zawierały moduły analizy składniowej.

Cele

Obecny wykład ma dwa cele

- przedstawić generowanie kodu i wykorzystywane podczas generacji kodu struktury danych,

- przedstawić niektóre zagadnienia pojawiajace sie podczas kompilacji programów pisanych w rzadziej używanych językach programowania.

Struktura wykładu

Rozpoczynamy od prezentacji Tablicy Symboli. Ta struktura danych nabiera coraz większego znaczenia w dobie upowszechniania się środowisk wspomagających pracę programistów takich jak Exlipse, JBuilder, etc. W podręcznikach poświęconych kompilacji temat ten przedstawiany jest dośyć pobieżnie. Kompilacja programów napisanych w Javie wymaga jednak dobrego zrozumienia zasad wiązania wystąpień aplikacyjnych identyfikatorów z odpowiednimi wystąpieniami deklacji definiujących znaczenie danego identyfikatora w kontekście jego wystąpienia aplikacyjnego.

Kolejny wykład poświęcony jest zagadnieniu staycznej analizy semantycznej....

Praca czytelnika/studenta

Dla dobrego opanowania przedstawionego tu materiału nie wystarczy przeczytać moduły składające sie na ten wykład. Wymagane jest aktywne wspóldziałanie. Czytelnik powinien opanować pojęcia jakie wprowadzamy, zrozumieć je i umieć się nimi posługiwać. Należy dobrze zrozumieć algorytmy tu przedstawiane i umieć wybrać właściwy spośród nich kierując sie kryteriami jego przydatności i kosztu jego zastosowania.

Laboratorium

Osobny moduł zaiera materiały niezbędne do przygotowania semestralnego zadania laboratoryjnego. Oczekuje sie, że uczestnik tych zajęć samodzielnie przygotuje i uruchomi kompilator dla niedużego jezyka programowania kotek. Kotek jest językiem nieco prostszym niż język Tiger przedstawiony w książce Appela.