lama_byterun/runtime/TODO.md

1.2 KiB

TODO list

  • Fix heap&stack&extra_roots dump
  • Remove extra and dead code
  • Debug print -> DEBUG_PRINT mode
  • Check mmap/remap/...
  • Check: __gc_stack_bot: same issue as __gc_stack_top?
  • Check: Can we get rid of __gc_init (as an assembly (implement in C instead))? (answer: if we make main in which every Lama file is compiled set __gc_stack_bottom to current ebp then yes, otherwise we need access to registers)
  • Check: runtime tags: should always the last bit be 1? (Answer: not really, however, we still need to distinguish between 5 different options (because unboxed values should have its own value to be returned from LkindOf))
  • Fix warnings in ML code
  • TODO: debug flag doesn't compile
  • Sexp: move the tag to be contents[0] instead of the word in sexp header; i.e. get rid of sexp as separate data structure
  • Run Lama compiler on Lama
  • Add more stress tests (for graph-like structures) to stdlib/regression and unit tests
  • Magic constants
  • Normal documentation: a-la doxygen
  • Think: normal debug mode
  • Fix warnings in C code
  • Modes (like FULL_INVARIANTS) -> separate files