34 lines
1.2 KiB
Plaintext
34 lines
1.2 KiB
Plaintext
# Compiler
|
|
|
|
- Separate headers and sources for the compiler, shell and tests.
|
|
- Make writing ELF independent from the code generation.
|
|
- Argument parsing.
|
|
- Whitespaces are checked twice, in the source class and by lexing.
|
|
- Catch exceptions thrown by the argument parser and print them normally.
|
|
- Division.
|
|
- Expressions contain one or more terms. Currently it parses another expression on the right side.
|
|
- Multiple factors.
|
|
- Put riscv code into the backend namespace.
|
|
- Rename riscv backend structs to be snake case.
|
|
- Make reference and Target be nested types of the visitor.
|
|
- Rename visitors to snake case.
|
|
- The backend visitor seems to generate code before the prologue.
|
|
|
|
# Shell
|
|
- Persist the history.
|
|
- Replace hard coded ANSI codes with constants or functions.
|
|
|
|
## Completion
|
|
|
|
- Configure fzf to show only the current directory files
|
|
- Support multiple selections for insertion in fzf.
|
|
- Don't hardcode fzf binary path.
|
|
- Send the word under the cursor to fzf as initial input.
|
|
- Home directory expansion.
|
|
- Show files in the PATH if starting at the beginning of the prompt
|
|
|
|
## Appearance
|
|
|
|
- Add a bar with additional information under the prompt (edit_bar), like the hostname.
|
|
- Show current time in the prompt.
|