8 Aug 02:30
Re: FSM Review Announcement
From: David Abrahams <dave <at> boostpro.com>
Subject: Re: FSM Review Announcement
Newsgroups: gmane.comp.lib.boost.devel
Date: 2008-08-08 00:30:36 GMT
Subject: Re: FSM Review Announcement
Newsgroups: gmane.comp.lib.boost.devel
Date: 2008-08-08 00:30:36 GMT
on Tue Aug 05 2008, Andrey Semashev <andrey.semashev-AT-gmail.com> wrote: > David Abrahams wrote: >> on Tue Aug 05 2008, Chris Knight <cknite-AT-gmail.com> wrote: >> >>> Andrey Semashev wrote: >>>> Jurko Gospodnetić wrote: >>>>> What are the intended and actual differences from the already accepted >>>>> Statechart library? >>>> The main differences are simplicity and performance. The performance >>>> tests show difference by an order of magnitude, in the best case for >>>> Boost.Statechart. The overall design of Boost.FSM is geared more to >>>> compile-time code generation, while Boost.Statechart aims to support >>>> more scaled machines and therefore is geared towards run-time. There is >>>> a section in the docs that compares the libraries. >>> I can attest to the necessity of this. We have several exchange libraries that >>> require state machines to implement their data protocols but we use >>> a home-brewed boost::mpl::inherit_linearly implementation because >>> the features of Boost.StateChart simply brings in to many >>> performance penalties >>> for our simpler usage that would fit within the Boost.FSM framework. In fact, >>> if I remember correctly, we used a thing on Boost.Vault called >>> "FSM" as an implementation guide. >> >> I don't know if you've seen the FSM examples from "C++ Template >> Metaprogramming" or not. It would be interesting for this library's >> documentation to explain its advantages over that approach (I can see >> some from here already). > > No, I don't have that book. For your perusal: http://www.boostpro.com/mplbook/examples/player.cpp http://www.boostpro.com/mplbook/examples/player2.cpp -- -- Dave Abrahams BoostPro Computing http://www.boostpro.com _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
RSS Feed