AbstractVM
AbstractVM is a virtual machine project developed in C++. The program interprets and executes arithmetic operations and commands written in a specific instruction set, simulating the behavior of a basic stack machine.
The objective of this project is to understand interpreted languages, memory management, and stack-based computation while developing a robust command-line interpreter. Features
Arithmetic Operations: Supports integer and floating-point operations.
Instruction Set: Executes commands such as push, pop, add, sub, mul, div, mod, and others.
Operand Types: Supports various types including int8, int16, int32, float, and double.
Stack Operations: Manages a stack with commands like dump, assert, and print.
Error Handling: Catches syntax errors, stack underflow, and invalid operations with detailed error messages.
Requirements
C++17 or higher - Required for language features.
CMake - For configuring the build process.
Make - To compile the source code.