Scheme-rs is an implementation of the R6RS specification of the Scheme programming language that is designed to be embedded within sync and async Rust.
Scheme-rs is safe, fast, and does not sacrifice modern conveniences.
- Modern: scheme-rs is a modern scheme implementation of the R6RS standard and includes advanced features such as delimited continuations.
- Fast: scheme-rs uses JIT compilation to provide performance on par with other modern scheme implementations.
- Easy to use: scheme-rs makes it trivial to define Rust functions and data structures that are accessible from scheme code and vice-versa.
- Safe: scheme-rs provides a completely safe API that is impossible to misuse.
- Supports both async and sync Rust: by enabling the
asyncfeature flag it becomes possible (and easy) to define async scheme functions in Rust.
For embedding scheme-rs in your Rust project, take a look at the API documentation.
For installing scheme-rs as a standalone executable, cargo can be used:
$ cargo install scheme-rs To enable async features, install with the async and tokio features:
$ cargo install scheme-rs --features "async,tokio"If you have any questions or comments about the project, feel free to join the scheme-rs discord server.
