57 lines
1.1 KiB
Markdown
57 lines
1.1 KiB
Markdown
## C
|
|
|
|
Decisions:
|
|
- How to handle errors
|
|
- How values and heap values will be represented
|
|
- Transparency and log levels
|
|
|
|
- [x] Makefile
|
|
- [x] VALUE
|
|
- [x] Stack
|
|
- [x] Test application
|
|
- [x] Heap
|
|
- [x] Heap value
|
|
- [x] Strings
|
|
- [x] Arrays
|
|
- [x] Tables
|
|
- [ ] VM
|
|
- [x] (Lua interface) call assembler
|
|
- [x] (Lua) generate bytecode
|
|
- [x] Labels
|
|
- [x] Code
|
|
- [x] Interpret bytecode (fast)
|
|
- [x] Execution loop (fast)
|
|
- [ ] VM operations
|
|
- [x] Expressions
|
|
- [ ] Local variables
|
|
- [ ] Functions
|
|
- [ ] With parameters
|
|
- [ ] Control flow
|
|
- [ ] Recursion
|
|
- [ ] Strings
|
|
- [ ] From constants
|
|
- [ ] Garbage collection
|
|
- [ ] Arrays
|
|
- [ ] Garbage collection
|
|
- [ ] Tables
|
|
- [ ] Garbage collection
|
|
- [ ] Metatables
|
|
- [ ] Iteration
|
|
- [ ] Floats (real)
|
|
- [ ] Globals (?)
|
|
- [ ] Error handling
|
|
- [ ] Stack trace in case of errors
|
|
- [ ] Closure/upvalues
|
|
- [ ] Rest of opcodes
|
|
- [ ] Prepare for release
|
|
- [ ] Documentation and webpage
|
|
|
|
## Future versions
|
|
|
|
- [ ] Debugging information
|
|
- [ ] Debugger
|
|
- [ ] Dynamic language
|
|
- [ ] Support tools
|
|
- [ ] Editor syntax file, etc
|
|
- [ ] Static language
|