Abstrakter Syntaxbaum (ast)

Definition - Was bedeutet Abstract Syntax Tree (AST)?

Ein abstrakter Syntaxbaum (AST) ist eine Möglichkeit, die Syntax einer Programmiersprache als hierarchische baumartige Struktur darzustellen. Diese Struktur wird zum Generieren von Symboltabellen für Compiler und zur späteren Codegenerierung verwendet. Der Baum repräsentiert alle Konstrukte in der Sprache und ihre nachfolgenden Regeln.

Technische.me erklärt Abstract Syntax Tree (AST)

Ein abstrakter Syntaxbaum repräsentiert alle syntaktischen Elemente einer Programmiersprache, ähnlich den Syntaxbäumen, die Linguisten für menschliche Sprachen verwenden. Der Baum konzentriert sich eher auf die Regeln als auf Elemente wie geschweifte Klammern oder Semikolons, die Anweisungen in einigen Sprachen beenden. Der Baum ist hierarchisch, wobei die Elemente der Programmieranweisungen in ihre Teile zerlegt sind. Ein Baum für eine bedingte Anweisung enthält beispielsweise die Regeln für Variablen, die vom erforderlichen Operator abhängen.

ASTs werden häufig in Compilern verwendet, um den Code auf Richtigkeit zu überprüfen. Wenn der generierte Baum Fehler enthält, gibt der Compiler eine Fehlermeldung aus. ASTs werden verwendet, weil einige Konstrukte nicht in einer kontextfreien Grammatik dargestellt werden können, z. B. implizite Typisierung. ASTs sind sehr spezifisch für Programmiersprachen, aber es werden derzeit universelle Syntaxbäume erforscht.