на сях альтернатива -- это таблицы, но их построение должно быть автоматическое, следовательно нужен си-подобный DSL. Мне такой неизвестен. Самому писать все некогда. http://softcraft.ru/auto.shtml
На плюсах -- точнее в объектном мире -- строится модель обработки событий. в принципе либо события, либо состояния могут описываться отдельными классами. Далее по классике: послать событие -- это вызвать метод класса.
Для плюсов имеется библиотека отечественного спеца Любченко В.С. (весьма резкого товарища). Но либа эта имеет закрытые исходники. Смотреть КА-технологию на
http://softcraft.ru/auto.shtml
В западном мире разрабатываются специальные языки синхронного программирования. Специально для решения задачи программирования конечных автоматов. Статья
http://softcraft.r …h/syncprog/index.shtml
Опять же отечественная ветка развития: язык Рефлекс от Зюбина В.Е.
http://softcraft.r …etc/reflex/index.shtml
Мне нравится UML-нотация и принципы в ней заложенные. Частично по этим принципам построена идеология SMC, но чересчур много дополнительных ограничений. Программировать через рисование -- долго и скучно ИМХО. Но принципы UML-автоматов мне нравятся.