Hierarchal state machines provide an elegant solution in many domains. Their stringent requirements enforce a level of discipline that often results in a highly reliable system. The state machine is useful in describing the reactive behavior of system. Add some structural components (à la ROOM) such as communication ports and containment concepts while supplying facilities for port binding, message delivery, and protocol translation, and a distributed state-machine framework is born. Breaking up larger reactive systems into smaller distributed machines with well defined interfaces is a powerful tool.
This session introduces the Ladon distributed state-machine framework a ciere consulting open-source project debuting at C++Now 2012. Ladon fuses Boost.MSM, Boost.Asio, and Boost.Spirit to create a rich distributed solution for reactive systems. In addition to discussing the design and basic usage of the framework, we will visit some of the more interesting patterns and solutions that can be employed in your own systems. Libraries we will touch on include: MSM, Spirit, Asio, Fusion, Signals2, and Phoenix.
This 90-minute session will provide an overview of several Boost libraries and modern C++ techniques to beginner and intermediate level attendees.
Etymology Ladon ( ) is the 100-headed serpent-like dragon of Greek mythology that guards the golden apples in the Garden of Hesperides. It is rumored that each head spoke a different language.