
You have a good point there. Although I would rather have seen the MSM guys collaborate with the Statechart guys on making Statechart easier to use (especially the expression of the transition table) and/or more performant, though.
MSM and Statechart assumptions and resulting implementations are so fundamentally different that merging the two libraries would IMO not be feasible. The result would most likely not be a very coherent interface. In other words, I don't think there can be a single best answer to "How do I implement a state machine in C++?". The requirements are just too varied. The main areas where I see conflict are: 1) Scalability: An MSM statemachine must be implemented in one TU, a Statechart statemachine can be spread over multiple TUs 2) State-local storage: In Statechart, storage only exists while a state is active. In MSM storage exists for the whole duration of the statemachine lifetime So, even if Christophe had asked me whether I'd want to collaborate on Statechart 2.0, I'd probably have declined. Regards, -- Andreas Huber When replying by private email, please remove the words spam and trap from the address shown in the header.