Abstrakt syntakstræ

Den aktuelle version af siden er endnu ikke blevet gennemgået af erfarne bidragydere og kan afvige væsentligt fra den version , der blev gennemgået den 27. maj 2020; checks kræver 5 redigeringer .

Abstrakt syntakstræ (ASD) eller syntakstræ eller AST (abstrakt syntakstræ) - i datalogi , et endeligt mærket orienteret træ , hvor interne hjørner er kortlagt (mærket) med programmeringssprogsoperatorer og blade - med de tilsvarende operander . Blade er altså tomme udsagn og repræsenterer kun variabler og konstanter.

Syntakstræer bruges i parsere til at give en mellemrepræsentation af et program mellem et parsetræ (et træ med en specifik syntaks) og en datastruktur , som derefter bruges som en intern repræsentation i en computerprogramkompiler eller tolk til optimering og kodegenerering. Mulige varianter af sådanne strukturer er beskrevet ved abstrakt syntaks.

Funktioner

Et abstrakt syntakstræ adskiller sig fra et parsetræ ved, at det mangler noder og kanter for de syntaksregler, der ikke påvirker programmets semantik. Gruppering af parenteser er et klassisk eksempel på dette fravær, da grupperingen af ​​operander i AST er eksplicit givet af træstrukturen.

For et sprog, der er beskrevet af en kontekstfri grammatik , som næsten alle programmeringssprog er, er det en triviel opgave at oprette et træ i en parser . De fleste regler i en grammatik skaber et nyt toppunkt, og tegnene i reglen bliver til kanter. Regler, der ikke bidrager med noget til DAS (f.eks. grupperingsregler), erstattes blot øverst med et af deres symboler. Derudover kan parseren oprette et komplet parsetræ og derefter krydse det, fjerne noder og kanter, der ikke bruges i den abstrakte syntaks, for at opnå en DAS.

Se også

Litteratur

Links