Boost logo

Boost :

From: Pavel Vozenilek (pavel_vozenilek_at_[hidden])
Date: 2005-03-01 09:31:25

Review of Boost.FSM library was extended by one week,
until March 6th.

Reviews, even short opinions on this library are
much welcomed.

I'll encourage public by quoting Darryl Green:
------ quote -----------
I have seen substantial reductions in code complexity arise out of using the
fsm libary in a refactoring of some existing code. The result is also much
easier to modify/maintain. This last point is particularly important if the
fsm is not well specified to start with and/or may need to be modified in
reaction to changes in requirements. Using boost fsm an
design approach works fine. In many ways this is less painful than if there
were a code generator.
------- end quote ------

So now is your chance to recommend this tool into Boost
(or pin-point problems or suggest alternatives).


Original review announcement:

Review of Finite State Machine library written
by Andreas Huber starts today, February 21.

The library can be found at:
(781 kB).

FSM is feature rich library to design finite state
machines without need for external generator.
It is accompanied by extensive documentation.

Here are some questions you might want to answer in
your review:

    * What is your evaluation of the documentation?
      How easy (or hard) it is to understand library
      features? What can be improved?

    * What is your evaluation of the design?
      What features are supported better by
      alternative FSMs? What could be added
      (or removed) from the library?

    * The library documentation contains
      few not yet solved issues (name,
      separating the library into two parts,
      exception handling). What is you opinion here?

    * What is your evaluation of the implementation?
      Are there parts of code too obscure or
      duplicating exiting Boost functionality?
      Can something be factored out to standalone
      library or among general utilities?

    * Are there performance bottlenecks?
      Does the library design fit requirements
      of real-time systems? How is it useable
      for embedded systems?
      Is the documentation clear on performance

    * What is your evaluation of the potential
      usefulness of the library? Can you compare
      this FSM to other implementations?

    * Did you try to use the library? With what
      compiler? Did you have any problems?
      Do you have tips for better support of older
      compilers? What are possible portability problems?

    * How much effort did you put into your
      A glance? A quick reading? In-depth study?

    * Are you knowledgeable about the problem domain?

And finally, every reviewer should answer this question:

    * Do you think the library should be accepted as a
      Boost library? Be sure to say this explicitly so that
      your other comments don't obscure your overall opinion.

Pavel Vozenilek
FSM review manager

Boost list run by bdawes at, gregod at, cpdaniel at, john at