# Rask
#### A Scheme interpreter
[](https://github.com/Vanille-N/rask)
[](https://opensource.org/licenses/MIT)
[](https://codecov.io/gh/Vanille-N/rask)
`rask` [](https://crates.io/crates/rask)
[](https://docs.rs/rask)
`chainmap` [](https://crates.io/crates/chainmap)
[](https://docs.rs/chainmap) (dependency)
---
> **rask** (Norwegian) *{adj.}*: **fast**, **swift**, **nimble**<br>Rust + Racket → Rask
**I could've gone for 'rasket', but as that one means 'trash'/'heavy' depending on the language, I decided against it.*
---
Rask is under development.
#### 0.1 roadmap:
- [X] **Split** (text → symbols)
- [X] **Lex** (symbols → tokens)
- [X] **Parse** (tokens → expression tree)
- [X] **Eval** (expression tree → expression)
- [X] **Cov** (decent test coverage)
Test coverage is now considered sufficient, 0.1 has had its last commit. Development will resume with 0.2, shortly after the 11th of July.
#### 0.2 roadmap:
- [ ] **Def** (defines and variable bindings)
- [ ] **Boot** (basic constructs: if, let, letrec, let*, ...)
- [ ] **REPL** (interactive [text → expression] loop)
- [ ] **Disp** (pretty-print expressions)
- [ ] **Err** (better error messages)
From 0.3 onwards, a standard library will be built.