Boost logo

Boost :

From: Andreas Huber (ahd6974-spamgroupstrap_at_[hidden])
Date: 2005-03-08 12:41:39


Alexander Nasonov <alnsn <at> yandex.ru> writes:
> > Why is it a problem to remember that?
>
> It's not a problem to remember one or two things but it's hard
> to remember more without a logic underneath.

Most people familiar with hierarchical FSMs (UML ones anyway) don't have a
problem seeing the logic. Also, I don't see what I should explain more than I
do already.

> I suggest at least using smart indentation in tutorial
> for better visual impression.

I can do that.

> > >2 forward declaration of events
> >
> > You mean states? That shouldn't be too hard either?
>
> This confusion proves my words :)

It may prove your words in your case, I don't think it proves anything how
well other people can learn the syntax. See comments/reviews from people who
have actually used the library.

> > >I think some of them should be defined somewhere else.
> > Where?
>
> Template arguments are not only the place to play in.
> For example, you may use nested typedef for transition
> table like in MPL FSM example.

True. Then again, I don't see much of a difference usability-wise between:

struct MyState : fsm::simple_state<
  MyState, Machine, mpl::list< /* ... */ > > {};

struct MyState : fsm::simple_state< MyState, Machine >
{
  typedef mpl::list< /* ... */ > reactions;
};

Regards,

-- 
Andreas Huber
When replying by private email, please remove the words spam and trap
from the address shown in the header.

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk