Hi Cliff,

Yes, Flex2 has a hierarchical state implementation, but it is very
basic. The good part is that it is tightly integrated to the framework
and the IDE.

If we were to build ( or adapt ) a full blown CHSM then integrating it
with the flex state machine should be an objective. Actually, Flex2's
should be easily blended into ours.
Conceptually, the tasks it performs ( property overrides, child
creation, etc ) could be hooked to onEnter and onExit handlers of a
more robust state machine.

Another idea I have been experimenting with:
- We could create an eclipse plugin to work as a monitor and draw the
state chart at runtime. Or we could use the classic LSO connection for
this purpose.

Why not wait till this conversation draws more attention and ideas
before starting something. There might be more than one person reading
around with a deep understanding on the subject.

Best,
Aldo


On 1/4/06, Clifford Hall <[EMAIL PROTECTED]> wrote:
> Very cool this SCXML stuff. checked out the w3c docs.
>
> BTW, states are incorporated into Flex 2. They're not in the alpha,
> but I saw it demonstrated at MAX. There is a <mx:State> tag that wraps
>  an arbitrary chunk of mxml. You can have state transition effects,
> etc. I doubt this is embracing SCXML or anything that ambitious, but
> before building the FSM, I'd want to see what Flex 2 holds and build
> upon it.
>
> I'm pretty interested in creating an FSM architecture for Flex,
> myself. Drop by my site and leave me a line if you're interested in
> chatting offline: futurescale.com
>
> -=Cliff>
>
>
> --- In [email protected], Aldo Bucchi <[EMAIL PROTECTED]> wrote:
> >
> > Hi flexies,
> >
> > Does anyone know of a good State Machine implementation in actionscript?
> > One with history, concurrent states, joins, splits ( forks ), etc?
> >
> > I have used Kaye's ( www.flashsim.com ), ported part of Miro Samek's
> > method based machine, modified a compiler (CHSM), and finally went
> > half the way to creating my own SCXML interpreter.
> >
> > So... why ask now???
> > well, because after all this work it has become evident that there is
> > so much space for different designs that hearing other people's
> > practical experiences is, well, a very practical way to take some
> > decisions... like the following for instance:
> >
> > - The state machine declaration ( states and transitions ) can be
> > supplied in several different ways
> > -- external XML declarations ( could be SCXML for example. Note that
> > this approach introduces some complexity due to the async loading
> > "state" )
> > -- inline XML declarations.
> > -- MXML declaration ( unfortunately we cannot provide an id for a
> > nested faceless component in flex 1.5)
> > -- Actionscript declaration ( instantiating classes )
> > -- with a class hierarchy ( a la samek )
> >
> > - How do we scope state and transition ids? Per state machine? per
> > superstate? do we use paths?
> >
> > - There is also the debate on giving each state it's own controller (
> > using class inheritance to override the superstate's controller ) or
> > using one central controller querying the machine.
> >
> > - How to declare event handlers ( in the same state/transition
> > declaration or later on by hooking them with listeners )
> >
> > - how do we implement guard conditions... are they necessary /
> > benefitial at all? why not just provide hooks for complex logic then.
> >
> > - and Finally, how do we feed events to the machine... should we be
> > able to call transitions directly?
> >
> > - MXML wrappers can be created to allow the use of binding and inline
> > event declarations
> > <fsm:StateProxy id="openState" stateMachine="{sm1}" stateName="open"
> > enter="trace('entering!'+event.target.name)" exit=""/>
> > <mx:Button label="close" enabled="{openState.active}"/>
> > Should we allow this without limits?
> >
> >
> > Pfff. write one line of code on this domain and you will see what I
> > mean. State machines are so broad and powerful that it is hard to see
> > the best way to fit them into flex at a glimpse.
> >
> > Help / observations / links / ideas appreciated.
> >
> > Man, we could even create a complete osflash project devoted to
> state machines.
> > ( perhaps I will if there is enough interest. let me know )
> >
> > Best,
> > Aldo
> >
> > --
> > ::::: Aldo Bucchi :::::
> > mobile (56) 8 429 8300
> >
>
>
>
>
>
> --
> Flexcoders Mailing List
> FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt
> Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.com
> Yahoo! Groups Links
>
>
>
>
>
>
>


--
::::: Aldo Bucchi :::::
mobile (56) 8 429 8300


--
Flexcoders Mailing List
FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt
Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.com 
Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/flexcoders/

<*> To unsubscribe from this group, send an email to:
    [EMAIL PROTECTED]

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/
 


Reply via email to