mirror of
https://github.com/bobbimanners/EightBall.git
synced 2024-11-22 12:34:23 +00:00
Updated roadmap to reflect progress made
parent
0cd43f9b5b
commit
7d9e48362c
@ -4,7 +4,7 @@ This is where I keep track of what to do next ...
|
|||||||
|
|
||||||
## Near-Term
|
## Near-Term
|
||||||
- A way to pass string literals as subroutine arguments
|
- A way to pass string literals as subroutine arguments
|
||||||
- Write a non-trivial app in EightBall to discover the pain points and the bugs that `unittest.8b` doesn't reveal
|
- Write a non-trivial app in EightBall to discover the pain points and the bugs that `unittest.8b` doesn't reveal. **I am writing a version of Tetris for Apple II lo-res mode.**
|
||||||
- Try to squeeze the interpreter / compiler code down a bit to save memory.
|
- Try to squeeze the interpreter / compiler code down a bit to save memory.
|
||||||
- There is duplication that can be eliminated by reorganizing the logic and/or factoring out into functions. For example, `getintvar()`/`setintvar()`.
|
- There is duplication that can be eliminated by reorganizing the logic and/or factoring out into functions. For example, `getintvar()`/`setintvar()`.
|
||||||
- Also, use preprocessor to allow compiler and/or interpreter to be disabled.
|
- Also, use preprocessor to allow compiler and/or interpreter to be disabled.
|
||||||
@ -23,8 +23,7 @@ This is where I keep track of what to do next ...
|
|||||||
- Need to think about how a module system should work
|
- Need to think about how a module system should work
|
||||||
- Which is more useful: dynamic loading of modules at runtime, or static linking?
|
- Which is more useful: dynamic loading of modules at runtime, or static linking?
|
||||||
- Optimize virtual machine bytecodes, based on study of real code
|
- Optimize virtual machine bytecodes, based on study of real code
|
||||||
- For example, it would be good to have an instruction to drop n bytes from call stack rather than repeated `POP`, `DROP` as the compiler currently does after subroutine return.
|
- Compiler often writes variable, and immediately needs it again. This can be optimized easily by adding some "store and preserve" VM instructions.
|
||||||
- Another easy case. Compiler often writes variable, and immediately needs it again. This can be optimized easily by adding some "store and preserve" VM instructions.
|
|
||||||
|
|
||||||
Today:
|
Today:
|
||||||
```
|
```
|
||||||
|
Loading…
Reference in New Issue
Block a user