A C implementation of a runtime for Mozzarella.
$ make
$ make testSee further planning among the documents below. Here is the current progress defining the various types in the runtime:
| Type | Implemented | New error model |
|---|---|---|
I64Value |
✅ | ✅ |
AsciiStrValue |
✅ | ✅ |
BoolValue |
||
NoneValue |
||
ArrayValue |
✅ | ✅ |
ArrayElements |
✅ | ✅ |
FuncValue |
✅ | ✅ |
MacroValue |
✅ | ✅ |
Environment |
✅ | ✅ |
CodeUnit |
✅ | ✅ |
SyntaxNodeValue |
✅ | ✅ |
IntValue |
✅ | ✅ |
StrValue |
✅ | ✅ |
SmallStrValue |
✅ | ✅ |
IntTable |
✅ | ✅ |
StrTable |
✅ | ✅ |
CodeTable |
✅ | ✅ |
- Value types
- Instructions
- Environments
- Instruction semantics
- Execution of routines
- Execution of a program (tbw)
- Converting AST to instructions (tbw)
- Three types of compilation unit (tbw)
- Mark-and-compact garbage collection
- Representing immediate values using unaligned offsets (tbw)
- A small relational database (tbw)