option-block
A minimal utility Rust crate for small, fixed-size blocks of optional types. (by BastiDood)
statig
Hierarchical state machines for designing event-driven systems (by mdeloof)
option-block | statig | |
---|---|---|
1 | 4 | |
0 | 538 | |
- | - | |
1.7 | 2.8 | |
about 1 year ago | 17 days ago | |
Rust | Rust | |
MIT License | MIT License |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
option-block
Posts with mentions or reviews of option-block.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-07-21.
-
Dipping Toes into Unsafe Code
View on GitHub
statig
Posts with mentions or reviews of statig.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-01-11.
-
Hierarchical state machine in Rust with `statig`
I went through multiple iterations for the design before arriving on something that (to me at least) feels clean and is easy to maintain. But of course I’m a bit biased and I’m curious to hear what other people think. So if this sounds interesting to you be sure to check out the repo!
-
Accessing embedded peripherals from state machine
I'm trying to make a blinky app targeting the ESP32-C3 using [statig HSM crate](https://github.com/mdeloof/statig) but I can't figure out how to access pins (or other peripherals) from the states.
-
Announcing `statig`: Hierarchical state machines for event-driven systems (using GAT’s)
The thing is that these handlers can result in different transitions or even no transitions at all (see the calculator example). Maybe one way to think of it is that "state" is the result of all events that have occurred and determines how the system responds to new events. So in that sense the method is the state. (Idk, does that make sense?)
What are some alternatives?
When comparing option-block and statig you can also consider the following projects:
scapegoat - Safe, fallible, embedded-friendly ordered set/map via a scapegoat tree. Validated against BTreeSet/BTreeMap.
stateright - A model checker for implementing distributed systems.
hsmcpp - C++ based Hierarchical / Finite State Machine library oriented for embedded and RTOS systems.
bonsai - Rust implementation of AI behavior trees.
bitfield-struct-rs - Procedural macro for bitfields.
esp-idf-template - A "Hello, world!" template of a Rust binary crate for the ESP-IDF framework.