Ich erstelle einen Baum, um eine einfache Sprache darzustellen. Ich bin mit Abstract Syntax Trees sehr vertraut und habe an Frameworks gearbeitet, um sie in C++ zu erstellen und zu verwenden. Gibt es eine Standard-Python-Bibliothek zum Angeben oder Manipulieren beliebiger ASTs? Fehlt das, gibt es eine Baumbibliothek, die für den gleichen Zweck nützlich ist?Bibliothek für die Programmierung abstrakter Syntaxbäume in Python
Hinweis, ich manipuliere nicht Python ASTs, so denke ich, das AST-Modul ist nicht geeignet.
ganz nett. ich hatte schon etwas gehofft, gut in eine Bibliothek abstrahiert, mit Dokumentation, usw. (keine Beleidigung). Meine Grammatik hat nur 6 Typen, so Es ist relativ einfach, es zu schreiben Ich selbst. Ich dachte nur, es könnte eine Standardbibliothek geben, die Leute benutzen. –
@Paul, wenn Sie darüber nachdenken, ist der beste Weg, eine AST zu verwenden, die Definition einer Klasse für jeden Knotentyp. Dies ist die polymorphste und sauberste Art, den Baum später zu durchlaufen (mit einem NodeVisitor). Daher müssen Sie diese Klassen trotzdem schreiben. Wenn man bedenkt, wie wenig Code ein AST in Python benötigt, bezweifle ich, dass hier eine Bibliothek benötigt wird. –
@AndersonGreen: danke, habe den Hauptlink aktualisiert und andere entfernt –