2 unstable releases
0.2.0 | Apr 10, 2023 |
---|---|
0.1.0 | Apr 1, 2020 |
#30 in #reactor
35 downloads per month
Used in boomerang
58KB
1.5K
SLoC
Boomerang
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.
See also Reactor Cpp
License
Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
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.
lib.rs
:
This crate provides Boomerangs' derive macro.
Dependencies
~6MB
~112K SLoC