glint
A tool for finite state machine analysis and synthesis.
glint is a tool facilitating you in development of state-oriented control entities which supposed to be used in very broad areas of programming (e.g. state-oriented network protocols).
glint saves you from pondering how your finite state machine should be organized, how many states it should have and what they should mean. You just tell glint how you would like your control entity to operate and glint returns to you the synthesised magic black box which implements the desired logic.
Also...