compile-time-fsm
HFSM2
compile-time-fsm | HFSM2 | |
---|---|---|
1 | 3 | |
50 | 441 | |
- | - | |
6.8 | 5.0 | |
6 months ago | about 1 month ago | |
C++ | C++ | |
MIT License | MIT License |
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.
compile-time-fsm
HFSM2
- State machine library for portable embedded application (C++11)
- HFSM2 development might slow down
-
Introducing FFSM2 and HFSM2 state machine libraries
Here is a gist showing a 3 level hierarchy using sml. https://gist.github.com/indiosmo/08ab24181770125d5a2448d27f6ae99f. Comparing the two, esp. when anything related to *hierarchical* state machines are involved, I strongly prefer HFSM2. Even when comparing the source code, I prefer HFSM2 https://github.com/andrew-gresyk/HFSM2/blob/master/include/hfsm2/machine.hpp to boost::sml https://github.com/boost-ext/sml/blob/master/include/boost/sml.hpp.
What are some alternatives?
hsm - Finite state machine library based on the boost hana meta programming library. It follows the principles of the boost msm and boost sml libraries, but tries to reduce own complex meta programming code to a minimum.
roost-hsm - Hierarchical State Machines in C++. A (sane) alternative to Boost MSM.
sml - C++14 State Machine library
amp-embedded-infra-lib - amp-embedded-infra-lib is a set of C++ libraries and headers that provide heap-less, STL like, infrastructure for embedded software development
csv2 - Fast CSV parser and writer for Modern C++
hfst - Helsinki Finite-State Technology (library and application suite)
BackportCpp - Library of backported modern C++ types to work with C++11
hsm - C++ framework library to simplify state-driven code
entt - Gaming meets modern C++ - a fast and reliable entity component system (ECS) and much more
CppML - A concise and readable metaprogramming language for C++
micro-gl - Headers Only C++11 CPU Vector Graphics. no std-lib, no FPU and no GPU required !