SW wykład 7 - Slajd12: Różnice pomiędzy wersjami
Nie podano opisu zmian |
Nie podano opisu zmian |
||
Linia 4: | Linia 4: | ||
Środowiska etykiet budowane będą przez dodatkową funkcję semantyczną, | Środowiska etykiet budowane będą przez dodatkową funkcję semantyczną, | ||
która traktuje instrukcje jak deklaracje etykiet (występujących w | która traktuje instrukcje jak deklaracje etykiet (występujących w | ||
zawartych w niej instrukcjach etykietowanych). | zawartych w niej instrukcjach etykietowanych). Ta pomocnicza funkcja | ||
semantyczna określi środowisko etykiet wprowadzonych w danej | semantyczna określi środowisko etykiet wprowadzonych w danej | ||
instrukcji w danym środowisku zmiennych, środowisku procedur, | instrukcji w danym środowisku zmiennych, środowisku procedur, |
Aktualna wersja na dzień 15:55, 29 wrz 2006
Kontynuacje Kontynuacje wyrażeń i deklaracji Tiny+++ Dziedziny semantyczne Funkcje semantyczne Przykłady klauzul [[SW_wykład_7_-_Slajd7|Przykłady klauzul, c.d.] Instrukcje Bloki Skoki Semantyka skoków Semantyka skoków, c.d. Semantyka skoków, c.d. Semantyka skoków, c.d. Semantyka "standardowa"

Środowiska etykiet budowane będą przez dodatkową funkcję semantyczną, która traktuje instrukcje jak deklaracje etykiet (występujących w zawartych w niej instrukcjach etykietowanych). Ta pomocnicza funkcja semantyczna określi środowisko etykiet wprowadzonych w danej instrukcji w danym środowisku zmiennych, środowisku procedur, środowisku etykiet (tych zewnętrznych dla danej instrukcji) i kontynuacji ("za" daną instrukcją).
Dla wielu konstrukcji budujących instrukcje, klauzule semantyczne dla tej funkcji są trywialne: wynikowe środowisko etykiet to po prostu niezmienione środowisko przekazane z zewnątrz instrukcji (jak w pokazanej klauzuli dla instrukcji przypisania). Dotyczy to wszystkich konstrukcji językowych, które nie wprowadzają instrukcji widocznych w bieżącym bloku. Warto zwrócić uwagę, że dotyczy to także instrukcji bloku, która może wprowadzać etykiety widoczne w jego wnętrzu, ale nie wprowadza etykiet widocznych w zewnętrznym bloku bieżącym.