CHSM
Concurrent Hierarchical State Machine

Introduction

CHSM is a language system for specifying concurrent, hierarchical, finite state machines (an implementation of "statecharts") to model and control reactive systems.

CHSM uses its own statechart specification langauge annotated with either C++ or Java code fragments in the tradition of yacc grammars with C code fragments. The generated code is fully object oriented allowing multiple state machines to exist concurrently. The CHSM run-time library is small, efficient, and thread-safe.

When using CHSM with Java, you can alternatively specify a statechart using Groovy instead of using CHSM's specification language.

CHSM has been used successfullly in production environments such as CERN, Philips, Qualcomm, and for the ANTARES neutrino telescope project. There is an independent review from users at CERN.


Copyright © 1996-2007 by Paul J. Lucas and Fabio Riccardi.
CHSM is available under the terms of the GNU General Public License. Commercial licenses are also available.
Last updated: October 21, 2007