
Hi, I would like to ask for a formal review of the Boost.FSM library proposed here not long ago. I've uploaded the implementation, test and documentation into Boost.Vault, it is accessible with this link: http://tinyurl.com/yjozfn There were several changes in the library since the proposal: - Integral constants tagged events support added - Transitions maps support improved. Each transition may now decide in run-time to which state to transit. The transition map itself may be broken into several pieces - the common part and state-specific parts. - Added an implementation of thread-locking state machine. It is quite equivalent to the "state_machine" class but adds a tiny synchronization layer between environment and the machine. - The library has been split into several headers and put into its own directory. - The documentation have been improved. -- Best regards, Andrey mailto:andysem@mail.ru PS: Happy New Year everyone!

Andrey Semashev wrote:
Hi,
I would like to ask for a formal review of the Boost.FSM library proposed here not long ago. I've uploaded the implementation, test and documentation into Boost.Vault, it is accessible with this link:
I'm preparing a list of items but since the thread is started, I can dump some of them now: Documentation does say that Event is CopyConstructible (it can be concluded from a signature of set_unexpected_event_handler). Actually, I don't see Concepts section in docs. Typos: s/proprties/properties/ s/setarate/separate/ s/beween/between/ s/calss/class/ -- Alexander Nasonov http://nasonov.blogspot.com It ain`t over till it`s over. -- Yogi Berra -- This quote is generated by: /usr/pkg/bin/curl -L http://tinyurl.com/veusy \ | sed -e 's/^document\.write(.//' -e 's/.);$/ --/' \ -e 's/<[^>]*>//g' -e 's/^More quotes from //' \ | fmt | tee ~/.signature-quote

Hello Alexander, Wednesday, January 3, 2007, 9:38:30 PM, you wrote:
Andrey Semashev wrote:
Hi,
I would like to ask for a formal review of the Boost.FSM library proposed here not long ago. I've uploaded the implementation, test and documentation into Boost.Vault, it is accessible with this link:
I'm preparing a list of items but since the thread is started, I can dump some of them now:
Documentation does say that Event is CopyConstructible (it can be concluded from a signature of set_unexpected_event_handler). Actually, I don't see Concepts section in docs.
In fact, the library itself doesn't require much from the types that users provide in template parameters. For example, it only requires the event type to be copy constructible, but user's on_process handlers may require something more. That makes it difficult to say the requirements to some types. But I'll try to state the requirements from the library implementation to some types, such as events, FSM return type, states, transitions and unexpected event handlers.
Typos:
s/proprties/properties/ s/setarate/separate/ s/beween/between/ s/calss/class/
Fixed, thanks for pointing these out. -- Best regards, Andrey mailto:andysem@mail.ru

On Sun, 31 Dec 2006 17:26:24 +0300 Andrey Semashev <andysem@mail.ru> wrote:
Hi,
I would like to ask for a formal review of the Boost.FSM library proposed here not long ago. I've uploaded the implementation, test and documentation into Boost.Vault, it is accessible with this link:
If you have not done so already, you should read the review comments for Boost.Statechart. There is considerable overlap, and I think you should first state how FSM addresses the difficiencies, and/or differences from that accepted library. That review had a fair amount of discussion, IIRC.

Hi Andrey, I have received your request and added this library to the review queue. Cheers, ron On Dec 31, 2006, at 9:26 AM, Andrey Semashev wrote:
Hi,
I would like to ask for a formal review of the Boost.FSM library proposed here not long ago. I've uploaded the implementation, test and documentation into Boost.Vault, it is accessible with this link:
There were several changes in the library since the proposal: - Integral constants tagged events support added - Transitions maps support improved. Each transition may now decide in run-time to which state to transit. The transition map itself may be broken into several pieces - the common part and state-specific parts. - Added an implementation of thread-locking state machine. It is quite equivalent to the "state_machine" class but adds a tiny synchronization layer between environment and the machine. - The library has been split into several headers and put into its own directory. - The documentation have been improved.
-- Best regards, Andrey mailto:andysem@mail.ru
PS: Happy New Year everyone!
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/ listinfo.cgi/boost
participants (4)
-
Alexander Nasonov
-
Andrey Semashev
-
Jody Hagins
-
Ronald Garcia