Subject: Re: [boost] [review] FSM Second Call for Reviews
From: David Abrahams (dave_at_[hidden])
Date: 2008-09-04 19:31:10
on Thu Sep 04 2008, "Thomas Klimpel" <Thomas.Klimpel-AT-synopsys.com> wrote:
> I don't think that the difference is the use case, but the representation in
> source code. I guess one possible representation of a finite state machine (one
> with a finite number of stateless states) is the list of transitions with the
> corresponding actions. (Let's forget about C++ for a moment. Let's simply
> imagine a text file with this list, and some tools to process this list in order
> to perform certain tasks, like optimizing the finite state machine, or verifying
> some important properties of the finite state machine.) Some people seem to
> think that this is a particularly clear representation of the corresponding
> machine. I'm no expert in this domain, so I can't say whether this judgment is
> justified. But my evaluation lead me to the conclusion that the "transition"
> feature of the fsm library is ill suited for a direct translation of this
> representation into source code.
For what it's worth, when I write an STT, I always group the transitions
by source state, so the representation is ultimately not all that
different than the state-based representation used by the proposed
library. I think the main difference is in the ability to read the
structure of the machine without too much interference from other code.
-- Dave Abrahams BoostPro Computing http://www.boostpro.com
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk