Added a few todo points
This commit is contained in:
parent
70792acb12
commit
65cc81032b
76
README.md
76
README.md
@ -96,10 +96,84 @@ This is what generates the AST from tokens.
|
||||
|
||||
This is what generates expressions from tokens.
|
||||
|
||||
## Todo
|
||||
|
||||
### Compiler
|
||||
|
||||
- [x] Tokenizer
|
||||
- [x] Scanner
|
||||
- [x] Functions
|
||||
- [x] Variables
|
||||
- [x] Error messages
|
||||
- [x] Expression parser
|
||||
- [x] Function calls
|
||||
- [x] Parallel compilation
|
||||
- [x] Syscalls
|
||||
- [x] Variable lifetimes
|
||||
- [x] Branches
|
||||
- [x] Loops
|
||||
- [ ] Data structures
|
||||
- [ ] Type system
|
||||
- [ ] Type operator: `|` (`User | Error`)
|
||||
- [ ] Hexadecimal, octal and binary literals
|
||||
- [ ] Error handling
|
||||
- [ ] Multiple return values
|
||||
- [ ] Threading library
|
||||
- [ ] Self-hosted compiler
|
||||
|
||||
### Keywords
|
||||
|
||||
- [ ] `for`
|
||||
- [x] `if`
|
||||
- [x] `import`
|
||||
- [x] `loop`
|
||||
- [x] `return`
|
||||
- [ ] `switch`
|
||||
|
||||
### Optimizations
|
||||
|
||||
- [x] Exclude unused functions
|
||||
- [ ] Expression folding
|
||||
- [ ] Function call inlining
|
||||
- [ ] Loop unrolls
|
||||
|
||||
### Linter
|
||||
|
||||
- [x] Unused variables
|
||||
- [x] Unused parameters
|
||||
- [ ] Unused imports
|
||||
- [ ] Unnecessary newlines
|
||||
- [ ] Ineffective assignments
|
||||
|
||||
### Operators
|
||||
|
||||
- [x] `=`
|
||||
- [x] `+`, `-`, `*`, `/`
|
||||
- [x] `+=`, `-=`, `*=`, `/=`
|
||||
- [x] `==`, `!=`, `<`, `<=`, `>`, `>=`
|
||||
- [x] `&&`, `||`
|
||||
- [ ] `%`
|
||||
- [ ] `<<`, `>>`
|
||||
- [ ] `<<=`, `>>=`
|
||||
- [ ] `&`, `|`, `^`
|
||||
- [ ] `&=`, `|=`, `^=`
|
||||
|
||||
### Architecture
|
||||
|
||||
- [ ] arm64
|
||||
- [ ] wasm
|
||||
- [x] x86-64
|
||||
|
||||
### Platform
|
||||
|
||||
- [x] Linux
|
||||
- [ ] Mac
|
||||
- [ ] Windows
|
||||
|
||||
## Tests
|
||||
|
||||
```shell
|
||||
go test ./... -v
|
||||
go test ./... -v -cover
|
||||
```
|
||||
|
||||
## Benchmarks
|
||||
|
Loading…
Reference in New Issue
Block a user