-
Notifications
You must be signed in to change notification settings - Fork 0
Description
Many instructions remain unimplemented for the time being. While there is nothing technically preventing the implementation of further instruction, implementing them without being able to check their correctness can bring some problems. Therefore, there was some restrain in implementing instructions without at least a single usage in an existing set of working examples.
The First Set
The first set of .vm files were provided by this repository. It generates .vm files from a simple C like language with Lex/Yacc and it also includes a java GUI implementation of the VM. It does a great job at showcasing the usage of compiler generator, but for our purposes it only generates instructions for its intended scope which limits the generated instructions to:
- Integer operations (no floating point)
- Array operations
- Standard input / output
- Jump / Labels
- Procedure call / return
Future work...
In order to advance the implementation there should always be a set example .vm files to prove its correct. This means that at any point if a set is found containing more unimplemented instructions or if there is willingness to create / generate a set independently the implementation can be continued.