-
Notifications
You must be signed in to change notification settings - Fork 0
Home
duangsuse edited this page Jan 3, 2018
·
4 revisions
MinVM is a Virtual Machine for Min Programming Language (which is still developing now)
that runs blazingly fast, prevents segfaults, and guarantees thread safety
that runs extreme slow, generate Exceptions, and has no multi-threading API not thread safe
and gives you extreme-small runtime for Min Programs(or other language that compiles to MinVM Assembly)
MinVM is a register-based Virtual Machine for Advanced Languages, like ParrotVM, BeamVM, and what MinVM depends on, the JVM.
MinVM has 4 registers and 1 stack (for passing arguments) and 2 internal stack. MinVM also has a global ENV(Hashtable<int, Object>) to store Objects.
- ax: A Register <Object>
- bx: B Register <Object>
- rx: FFI Call Result Register <Object>
- ex: Exception Register <Exception>
- pc: Program Counter <Long>
- asp: Argument Stack Pointer <Integer>
- csp: Call Stack Pointer <Integer>
- esp: Scope Stack Pointer <Integer>
- as: Argument Stack <Array<Object>>
- cs: Call Stack <Array<Long>>
- es: Scope Stack <Array<Scope>>
See wiki
minized-lang/MVM is licensed under the GNU General Public License v3.0