TinyPie es un intérprete basado en árboles de un lenguaje de programación sencillo con una sintaxis de Python como & nbsp;. Ejecuta código fuente mediante la construcción del árbol de sintaxis abstracta (AST) y caminar el árbol.
Está basado en el lenguaje de la empanada de 'Lengua Patrones de implementación. Ch.9 Cita del libro: "Un intérprete basado en árboles es como un front-end del compilador con un intérprete injertado en el final en lugar de un generador de código".
Objetivos del proyecto:
1. La autoeducación
2. Para servir como un ejemplo para las personas interesadas en la elaboración de su propio intérprete de Python para un lenguaje de programación simple o DSL
Características
- Implementado en Python
- lexer basada en Regexp
- LL (k) parser descendente recursivo
- Analizador construye homogénea árbol de sintaxis abstracta (AST)
- Soporte alcance estático / léxico.
- Intérprete construye el árbol alcance completo durante la construcción AST.
- Interpeter gestiona el espacio de memoria global y pila espacio funcional
- Intérprete implementa visitante AST externa
- referencias Adelante apoyar
¿Qué hay de nuevo en esta versión:
- Agregado Bytecode ensamblador
- Virtual Machine Subscribir base-
Requisitos
- Python
Comentarios que no se encuentran