- Basic vm instructions and bytecode setup
- Basic CPU calculation in bytecodes
- Native function call implementation
- Initiate IO (printing to console)
- Implement heap
- Implement arrays
- Return data from native calls
- Constant pool implementation
- Store multiple data types - floats, boolean (ldc, fload)
- Basic arithmetic ops on different data types
- String implementation
- IO - Read from console
- IO - Read and write from files
- IO - Networking - Read and Write Sockets
- Allow calling glox program calls from native code (https://stackoverflow.com/a/17083153)
- Use single function to allow access to internal symbol table (constant pool/function pool)
- Objects (Classes and methods)
- Pass objects to native calls
- Allow for making libraries
- Store bytecode to binary file
- Convert glox code to bytecode
- Build symbol table
- Make GNative code generator