Estoy creando un árbol para representar un lenguaje simple. Estoy muy familiarizado con Abstract Syntax Trees, y he trabajado en frameworks para compilarlos y usarlos en C++. ¿Hay una biblioteca de python estándar para especificar o manipular AST arbitrarios? En su defecto, ¿existe una biblioteca de árbol que sea útil para el mismo propósito?Biblioteca para programar Árboles sintácticos abstractos en Python
Nota, no estoy manipulando Python ASTs, por lo que creo que el módulo AST no es adecuado.
bastante agradable. tenía la esperanza de algo ya muy bien abstraído en una biblioteca, con la documentación, etc (sin ofender). Mi gramática tiene sólo 6 tipos, por lo es relativamente sencillo escribirlo o Yo mismo. Solo pensé que podría haber una biblioteca estándar que usan las personas. –
@Paul, si lo piensa, la mejor manera de usar un AST es definir una clase para cada tipo de nodo. Esta es la forma más polimórfica y limpia de atravesar el árbol más tarde (con un NodeVisitor). Por lo tanto, tienes que escribir esas clases de todos modos. Teniendo en cuenta qué tan poco código requiere un AST en Python, dudo que se necesite una biblioteca aquí –
@AndersonGreen: gracias, actualicé el enlace principal y eliminé otros –