Skip to content

maplant/scheme-rs

Repository files navigation

Scheme-rs: Embedded Scheme for the Rust Ecosystem

github crates.io docs.rs

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.

Features:

  • 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 async feature flag it becomes possible (and easy) to define async scheme functions in Rust.

Getting started:

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"

Documentation

Contributing

If you have any questions or comments about the project, feel free to join the scheme-rs discord server.

About

Embedded Scheme for the Rust Ecosystem

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors 5

Languages