Skip to content

Latest commit

 

History

History
28 lines (26 loc) · 1012 Bytes

Todo.md

File metadata and controls

28 lines (26 loc) · 1012 Bytes

Things to do

VM Level

  • 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

Compiler level

  • Store bytecode to binary file
  • Convert glox code to bytecode
  • Build symbol table
  • Make GNative code generator