Subject: Re: [boost] [msm] Review
From: Andreas Huber (ahd6974-spamboostorgtrap_at_[hidden])
Date: 2009-12-21 07:40:16
"Christophe Henry" <christophe.j.henry_at_[hidden]> wrote in message
>>> You brought 2 reasons for this impossibility:
>>> 1. Automatic entry/exit. You answer that "With separate FSMs you'd
>>> have to manage this yourself".
>>> 2. Automatic event dispatch. You answer that "Again, with separate
>>> FSMs you'd have to do that yourself (dispatch to first FSM and if that
>>> didn't consume the event, dispatch to second FSM and so on)."
>> It appears that you should read the 2005 post a lot more carefully,
>> especially the quoted context. The remarks you quote above have *nothing*
>> do with the impossibility I claimed.
> No, I won't spend "a lot more" time trying to decipher the supposedly
> hidden meaning of your post and invest the time more wisely by making
> MSM more useful.
Christophe, you definitely made a mistake interpreting that post, even after
supposedly having read it twice. And no, it's neither difficult to interpret
nor is there a "hidden meaning". To the contrary, this is one of the rare
posts where the quoted context was preserved perfectly. Given your writing
skills and your demonstrated intelligence, I think it is pretty safe to
assume that you simply haven't read the post carefully enough. Moreover, the
web page you linked to
(<http://lists.boost.org/Archives/boost/2005/03/81853.php>) also happens to
color the text so that it's much clearer to see who said what. I think
anyone with a bit of exposure to usenet groups should be able to see that
the post contains an exchange between David Abrahams and me. Moreover, it is
also quite clear that the exchange went as follows:
1) Dave: "I'm not saying that Aleksey's library can handle all practical
state machines. I'm saying that it's possible to build a
statically-dispatched FSM library that handles all practical state
2) Andreas: "In one TU or spread over multiple TUs?"
3) Dave: "I was thinking of the latter."
4) Andreas: "That depends on the functionality. I don't think it is possible
if you want to provide support for orthogonal regions."
5) Dave: "Sorry, I don't really understand the concept. How are they
different from separate state machines?"
6) Andreas: "Orthogonal states are different from separate FSMs in two ways:
1. Automatic entry/exit: If a transition ..." (see link above for full
Now, how exactly is it not cristal-clear that comment 6 is in reply to
Dave's question "How are they [orthogonal regions] different from separate
state machines?". More precisely, comment 6 explains why separate state
machines are a bad substitute for orthogonal regions and has absolutely
nothing to do with my claim you quoted.
> The link I added seems quite clear to me and anyone interested can
> make himself his own opinion by opening it.
Your very first remark about that 2005 post of mine shows that you've
misunderstood it the first time. As I demonstrated above, you're still
totally missing at least part of the meaning of the post even after my
clarification, which you seemingly mostly brushed aside. Finally, even after
being alerted to the fact that your comments are totally off the mark, you
apparently insist on not considering that you might have misunderstood the
2005 post. Now, everybody misreads stuff once in a while and I usually don't
hold that against anyone, but when they do so repeatedly without much
apparent consideration for diverging inputs from others then I do hold it
against them. Really, in this exchange you've been showing a stubbornness
that I haven't seen in a while. Note that I'm not claiming that the 2005
post or any of my ensuing comments are flawless but I do claim that the
overwhelming majority of the people with a similar background as yours would
have understood the 2005 post differently than you have, especially after my
clarification and my previous post.
> You did not bother bringing an argumentation disproving my claim, so I
> will simply keep it.
What claim exactly? The one where you say that you've proven that you can
implement at least as much as statechart with meta-programming techniques?
Well, I've tried but apparently you weren't listening.
> As you also didn't address the more important technical part (multiple
> TU) of my answer, I will consider it accepted.
For the record: I don't accept it, because it is missing important facts
about multi-TU machines. I did consider addressing this in my previous post
but decided against it because I had a hunch that you wouldn't read it with
sufficient care anyway. You've pretty much confirmed that hunch with
your answer. I'll gladly address this once I'm confident the time invested
in writing such a post will not be wasted.
-- 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