Metody realizacji języków programowania/MRJP Ćwiczenia 2: Różnice pomiędzy wersjami
Nie podano opisu zmian |
|||
Linia 3: | Linia 3: | ||
== Zadanie 1 == | == Zadanie 1 == | ||
Skonstruuj przykład programu w wybranym przez Ciebie języku programowania w taki sposób, by dla pewnego wystąpienia identyfikatora ''Coto'' mozna było wskazać co najmniej cztery różne deklaracje tego identyfikatora. Jedna z tych deklaracji może opisywać identyfikator ''Coto'' jako zmienną, druga jako klasę, trzecia jako tablicę,... | |||
Zrób to tak by usuwanie kolejnych deklaracji tego identyfikatora zmieniało sens programu lub wynik kompilacji. | |||
== Zadanie 2 == | |||
Napisz algorytm przeszukiwania grafu tablicy symboli. | Napisz algorytm przeszukiwania grafu tablicy symboli. | ||
Dla danego identyfikatora ''id'' oraz węzła ''w'' znajdź węzeł ''v'' zawierajacy deklarację identyfikatora ''v''. Wrzuć wyjątek "''Brak deklaracji''" jeśli nie istnieje węzeł ''v'' zawierający deklarację identyfikatora ''id'' widoczną w module węzła ''w''. | Dla danego identyfikatora ''id'' oraz węzła ''w'' znajdź węzeł ''v'' zawierajacy deklarację identyfikatora ''v''. Wrzuć wyjątek "''Brak deklaracji''" jeśli nie istnieje węzeł ''v'' zawierający deklarację identyfikatora ''id'' widoczną w module węzła ''w''. |
Wersja z 08:10, 28 wrz 2006
autor Andrzej Salwicki (salwicki@mimuw.edu.pl)
Zadanie 1
Skonstruuj przykład programu w wybranym przez Ciebie języku programowania w taki sposób, by dla pewnego wystąpienia identyfikatora Coto mozna było wskazać co najmniej cztery różne deklaracje tego identyfikatora. Jedna z tych deklaracji może opisywać identyfikator Coto jako zmienną, druga jako klasę, trzecia jako tablicę,...
Zrób to tak by usuwanie kolejnych deklaracji tego identyfikatora zmieniało sens programu lub wynik kompilacji.
Zadanie 2
Napisz algorytm przeszukiwania grafu tablicy symboli. Dla danego identyfikatora id oraz węzła w znajdź węzeł v zawierajacy deklarację identyfikatora v. Wrzuć wyjątek "Brak deklaracji" jeśli nie istnieje węzeł v zawierający deklarację identyfikatora id widoczną w module węzła w.