Subject: [boost] [msm] eUML guard/action location
From: Christophe Henry (christophe.j.henry_at_[hidden])
Date: 2009-12-07 17:52:31


Hi Michael,

I just remembered the last reason for the current eUML syntax:
CurrentState() + cool_event() = DestState() [Guard()]/(action())

It is that eUML row actions/guards can become quite long (something
like adjacent_find_(...) ) and I was having difficulties keeping the
rows readable. Concretely, I often had to keep the target state on a
line by itself, which was costing a line of my screen. With the
current syntax, you can get it easier:

CurrentState() + cool_event() = DestState()
[VeeeeeryLoooooooooongGuard()]
/(LooooooooooooooooongAction())

instead of:

CurrentState() + cool_event()
[VeeeeeryLoooooooooongGuard()]
/(LooooooooooooooooongAction())
= DestState()

For the tranquility of my conscience, are you still sure you prefer
the more logical syntax?

Christophe