Python parser para lenguaje similar a Python
Estoy buscando escribir un filtro o preprocesador de importación de Python para archivos fuente que son esencialmente Python con elementos de lenguaje adicionales. El objetivo es leer el archivo fuente, analizarlo en un árbol de sintaxis abstracta, aplicar algunas transformaciones para implementar las nuevas partes del lenguaje y escribir una fuente Python válida que CPython pueda consumir. Quiero escribir esto en Python y estoy buscando el mejor analizador para la tarea.
El analizador integrado en Python no es apropiado porque requiere que los archivos de origen sean Python reales, que no serán. Hay toneladas de analizadores (o generadores de analizadores) que funcionarán con Python, pero es difícil saber cuál es el mejor para mis necesidades sin una gran cantidad de investigación.
En resumen, mis requisitos son:
Parser está escrito en Python o tiene enlaces de Python.Viene con una gramática de Python que puedo ajustar, o puedo consumir fácilmente una gramática de Python modificable disponible en otros lugares (comohttp: //docs.python.org/reference/grammar.htm).Puede volver a serializar el AST después de transformarlo. No debería ser demasiado horrible para trabajar con API-sabio.¿Alguna sugerencia