#Brewin# Interpreter V3
-
intbase.py, the base class and enum definitions for the interpreter -
bparser.py, a staticparserclass to parse Brewin programs -
interpreterv2.py, a working top-level interpreter for project 2 that mostly delegates interpreting work to:classv2.pywhich handles class, field, and method definitionsenv2.pywhich handles the program environment (a stack-based approach to accommodate local variables)objectv2.pywhich additional implements inheritance and method calling; most of the code is here!type_valuev2.pywhich additionally manage type checking
-
interpreterv1.py, a working top-level interpreter for project 1 that mostly delegates interpreting work to:classv1.pywhich handles class, field, and method definitionsenv1.pywhich handles the program environment (a map from variables to values)objectv1.pywhich handles operations on objects, which include statements, expressions, etc; most of the code is here!type_valuev1.pywhich has classes to create type tags