#actor #reactor

nightly boomerang

Rust implementation of “Reactors” Deterministic Actor Model

1 unstable release

0.1.0 Apr 1, 2020

#9 in #reactor

MIT/Apache

42KB
645 lines

Boomerang

pipeline status codecov crates.io API

Rust implementation of the "Reactors" Deterministic Actor Model, described by M. Lohstroh, A. Lee, et al U.C. Berlekely, Link to paper.

Comparison to Lingua-Franca

The Lingua-Franca project (https://github.com/icyphy/lingua-franca/wiki) serves as a point of reference for Boomerang.

The Boomerang scheduler started out as a direct Rust port of the Lingua-Franca Discrete-Event scheduler runtime. Instead of using a distinct "compositional language" like Lingua-Franca, Boomerang leverages the power of Rust derive-macros to directly annotate the Reactor semantics and composition. The resultant DAG is analyzed and used to generate implementation primitives for the Scheduler.

This project is still in the very early stages, but intends to implement as much of the language specification and features from Lingua-Franca as possible.

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Dependencies

~4MB
~97K SLoC