rask

Crates.iorask
lib.rsrask
version0.2.1
sourcesrc
created_at2020-06-02 16:28:47.668533
updated_at2020-07-16 07:28:02.403813
descriptionToy Scheme implementation
homepage
repositoryhttps://github.com/Vanille-N/rask
max_upload_size
id249313
size80,776
Neven Villani (Vanille-N)

documentation

README

Rask

A Scheme interpreter

License: MIT codecov

rask crates.io API

chainmap API (dependency)


rask (Norwegian) {adj.}: fast, swift, nimble
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:

  • Split (text → symbols)
  • Lex (symbols → tokens)
  • Parse (tokens → expression tree)
  • Eval (expression tree → expression)
  • 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.

Commit count: 321

cargo fmt