A small dynamic language interpreter written by copy'n'pasting from Crafting Interpreters.
Future versions will grow to include some or all of the following:
-
More complete (dynamic) types for values and annotations for callable objects.
-
Checking of automatic and manual contracts (from type annotations and assertions).
-
More structural syntax for class definitions: declared parameters, declared private fields, etc.
-
Some form of generics: classes are parameterised by types; a type is a class and a vector of types.