Scott, > Specification and Description Language also known as ITU Z.100. Check > it > out at; > > http://www.sdl-forum.org/SDL/ >
Thanks for the link. I've had a look at the SDL-2000 slide show. http://www.informatik.hu-berlin.de/~holz/SDLTutorial/SDL2000Tutorial.zip AFAICT, SDL FSMs are *very* similar to UML FSMs. Not all that surprising, given the fact that both languages base on Harel's state charts. The terminology and the charts are slightly different for some concepts but I'm quite sure one could implement just about every SDL state machine with a threading-enabled version of boost::fsm, with very few or no workarounds. About the only concept missing in my library is a triggerless transition (SDL: non-deterministic input), which currently is the last item on my to-do list. Here's a terminology mapping: UML/boost::fsm <-> SDL --------------------------- event <-> signal reaction <-> input guard(ed reaction) <-> constrained input junction point/choice point <-> decision entry action <-> initialisation exit action <-> finalisation state with two or more orthogonal regions <-> state aggregation inner state <-> composite state terminator <-> stop state The remaining concepts (transition, deferral) have the same names in both languages. Interestingly, SDL also defines exception handlers (supported by boost::fsm), which UML lacks completely. Moreover, SDL specifies block and process agents, which are not supported by UML and my library but could be implemented on top of it. I therefore think that boost::fsm could be useful for domains where behavior is specified with SDL. > As a consequence its pretty good for specifying large communities of > distributed, > co-operating FSMs. There is a large quantity of code running in > switching networks > that is based on SDL documentation, e.g. ITU-T Q.931 (ISDN PRI). How is that code usually implemented? Are there SDL code generators and/or widely used libraries or do people normally handcraft such systems? Regards, Andreas _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
