
----- Original Message ----- From: "Andreas Huber" <ah2003@gmx.net> To: <boost@lists.boost.org> Sent: Thursday, May 27, 2004 9:51 AM Subject: [boost] Re: [prereview request][fsm] [...]
Yes, you can do that if you want (it is a per state machine policy). The default is to always dispatch an exception_thrown event.
Interesting solution! catch { try { throw; } catch( type1 ) { ... } } never thought about it. This is why I didn't know how to make it generic. It makes sense now.
See http://tinyurl.com/2bjjw, Unstable state machine
It sounds kind of disturbing to me when a generic state machine framework defines some sort of unstable states on its own.
I don't think so, the behavior is clearly defined and just automates what you'd do manually anyway.
As for unstable states. Does this idiom mean that any exception event handling state must be considered as an implicit *inner* state of any other state that throws? So that *only* the exception handling states can be considered as *most inner* states. I think that one of the most important goals of the state machines design is to achieve a completely deterministic behavior. Doesn't your default exception handling idiom compromise this objective? However as soon as you can customize or disable the default exception handling. I am fine with that. Eugene