Soil is a specification for a register-based virtual machine that is designed to be easy to implement on typical machines.
This GitHub organization contains several repositories:
- soil-asm: A compiler to machine code writtin in x86_64 assembly.
- soil-c: An interpreter written in C.
- soil-dart: An interpreter written in Dart.
- soil-flutter: An interpreter an visual debugger written in Flutter.
- soil-js: An interpreter written in JavaScript.
- soil-recipe: Tools for converting between textual Soil assembly and Soil binaries.
- soil-rust: An interpreter written in Rust.
- soil-zig: An interpreter and compiler to machine code written in Zig.
Programs can be distributed as Soil binaries, files that end with .soil
.