TinyPie is een boom-gebaseerde interpreter voor een eenvoudige programmeertaal met een Python-achtige syntax & nbsp;. Het voert source code door de aanleg van Abstract Syntax Tree (AST) en het lopen van de boom.
Het is gebaseerd op Pie taal van 'Language Implementation Patterns'. Ch.9 Citaat uit het boek: "A-boom gebaseerde interpreter is als een compiler front-end met een tolk geënt op het einde in plaats van een code generator".
Doelen van het project:
1. Self-onderwijs
2. Om te dienen als een voorbeeld voor mensen die geïnteresseerd zijn in het vervaardigen van hun eigen tolk in Python voor een eenvoudige programmeertaal of DSL
Eigenschappen
- geïmplementeerd in Python
- -Regexp gebaseerd lexer
- LL (k) recursive-afdaling parser
- Parser construeert homogene Abstract Syntax Tree (AST)
- Static / lexicale scope support.
- Interpreter bouwt volledige scope boom tijdens AST bouw.
- Interpeter beheert wereldwijde geheugenruimte en de functie van de ruimte stapel
- Interpreter implementeert externe AST bezoeker
- Forward verwijzingen ondersteunen
Wat is nieuw in deze release:
- Toegevoegd Bytecode Assembler
- Toegevoegd Register-Based Virtual Machine
Eisen
- Python
Reacties niet gevonden