pocketlang/cli/TODO.txt
2021-06-06 03:10:58 +05:30

49 lines
1.5 KiB
Plaintext

// To implement.
- Implement argparse.
- -v --version
- emit opcodes
- maybe write a similer .pyc file for pocket
- --docs to generate docs from cstring.
- dump compiled code to a file.
- In keyword.
- Structs (maybe enums).
- Implement file IO (require structs).
- Implement gdb like debugger (add color print for readability).
- Implement fiber from script body and vm run fibers (not scripts).
Then remove vm's root script.
- Initialize imported scripts (require fiber based vm).
- REPL. compile expression for a script.
- Hex, binary literals and floats like ".5".
- Docs build to a single directory, and replace url space (%20) with a hyphen.
- Complete all the TODO; macros.
// Low priority.
- Ignore line with '\' character.
- Make it possible to override function names.
- To do so the functions and global variables should be in the same
buffer as the property of the script.
- Function docstring property.
- Union tagging alter in var.
- Github actions.
// Add more.
- Single header for embedding (script in pk, require file IO).
[ ] Compilte core methods.
[ ] Complete var methods.
[ ] Complete core functions.
[ ] Complete builtin operators.
[ ] Complete opcodes.
[ ] Complete core libs.
[ ] Complete the docs.
[ ] More Tests.
// Bugs.
It's at pre-alpha and every thing is left to
implement, and nothing would be work as expected.
- f = func print() end; print(f) # semicollon should be there.
def f() print() end print(f) # semicollon should be there.
make it okey to use semicollon freely like new lines.