SW wykład 2 - Slajd3: Różnice pomiędzy wersjami

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Mengel (dyskusja | edycje)
Nie podano opisu zmian
 
Dorota (dyskusja | edycje)
Nie podano opisu zmian
 
(Nie pokazano 4 wersji utworzonych przez 2 użytkowników)
Linia 1: Linia 1:
{{Szablon:Semantyka i weryfikacja programów/Wykład 2}}
[[Grafika:sw0202.png|frame|center|]]
[[Grafika:sw0202.png|frame|center|]]
Właśnie strukturę fraz programu określa składnia
abstrakcyjna. Rozumieć ją należy jako opis struktury programu przez
podanie kolejnych konstrukcji językowych, które budują kolejne frazy
programu i w końcu całe programy ze swoich bezpośrednich składowych,
uprzednio zbudowanych w podobny sposób. Najlepiej definiuje tę
strukturę drzewo rozbioru (wyprowadzenia) programu w jego zadanej
gramatyce bezkontekstowej. Podstawowym celem analizy składniowej jest
właśnie zbudowanie takiego drzewa wyprowadzenia w gramatyce składni
konkretnej języka dla zadanego słowa nad przyjętym alfabetem --- o ile
jest to możliwe. Gdy nie jest to możliwe, zadane słowo nie należy do
języka, nie stanowi zatem programu w rozważanym języku
programowania. Wtedy zadaniem analizy składniowej jest możliwie
najbardziej precyzyjne wskazanie "błędu syntaktycznego" i możliwości
jego poprawienia.

Aktualna wersja na dzień 10:29, 27 wrz 2006

<<powrót do strony wykładu

Składnia Składnia konkretna Składnia abstrakcyjna Przyjmowane założenia Przykład wiodący Kategorie składniowe Kategorie składniowe, c.d. Uwagi Indukcja strukturalna Definicje indukcyjne Kategorie semantyczne Wartościowanie zmiennych Semantyka wyrażeń Semantyka wyrażeń logicznych Semantyka instrukcji Prosty fakt Dowód Przezroczystość odwołań Semantyka operacyjna Obliczenia Semantyka operacyjna Tiny Własności Własności, c.d. Warianty definicji

Właśnie strukturę fraz programu określa składnia abstrakcyjna. Rozumieć ją należy jako opis struktury programu przez podanie kolejnych konstrukcji językowych, które budują kolejne frazy programu i w końcu całe programy ze swoich bezpośrednich składowych, uprzednio zbudowanych w podobny sposób. Najlepiej definiuje tę strukturę drzewo rozbioru (wyprowadzenia) programu w jego zadanej gramatyce bezkontekstowej. Podstawowym celem analizy składniowej jest właśnie zbudowanie takiego drzewa wyprowadzenia w gramatyce składni konkretnej języka dla zadanego słowa nad przyjętym alfabetem --- o ile jest to możliwe. Gdy nie jest to możliwe, zadane słowo nie należy do języka, nie stanowi zatem programu w rozważanym języku programowania. Wtedy zadaniem analizy składniowej jest możliwie najbardziej precyzyjne wskazanie "błędu syntaktycznego" i możliwości jego poprawienia.