Difference between revisions of "State Machine Compiler"

From Free Software Directory
Jump to: navigation, search
(New version)
Line 10: Line 10:
|Related projects=Ragel_State_Machine_Compiler
|Related projects=Ragel_State_Machine_Compiler
|Keywords=class,switch statements,state pattern,state diagram,.sm,transition matrix
|Keywords=class,switch statements,state pattern,state diagram,.sm,transition matrix
|Version identifier=6.3.0
|Version identifier=6.6.0
|Version date=2013-09-02
|Version date=2015/08/02
|Version status=stable
|Version status=stable
|Version download=http://sourceforge.net/projects/smc/files/SMC%20Source%20Code/6_3_0/SmcSrc_6_3_0.tgz/download
|Version download=https://sourceforge.net/projects/smc/files/SMC%20Source%20Code/6_6_0/SmcSrc_6_6_0.tgz/download
|Version comment=6.3.0 stable released 2012-09-02
|Version comment=6.6.0 stable released 2015-08-02
|Last review by=Janet Casey
|Last review by=Alejandroindependiente
|Last review date=2008-01-07
|Last review date=2017/01/12
|Submitted by=Database conversion
|Submitted by=Database conversion
|Submitted date=2011-04-01
|Submitted date=2011-04-01

Latest revision as of 19:32, 11 January 2017

Reviews: 0 ... further results.


State Machine Compiler

Generates the state pattern classes in C++, Java, or [incr Tcl]

'SMC' takes a state machine stored in an .sm file and generates the state pattern classes in C++, Java, or [incr Tcl]. No more hand-maintained transition matrices or widely scattered switch statements. The state diagram is now in one place, coded directly from the picture to the SMC language and easily maintained. Dealing with unexpected events is a must for a robust application. By combining virtual methods with the state pattern, SMC lets you define "Default" transitions - transitions which allow your objects to handle unexpected events, recover and continue providing service.


User FAQ available in HTML format from http://smc.sourceforge.net/SmcFaq.htm; Developer's reference manual available in HTML format from http://smc.sourceforge.net/SmcManSec??.htm



version 6.6.0 (stable)
released on 2 August 2015

VCS Checkout



Related Projects



Verified by

Verified on


Verified by

Janet Casey

Verified on

2 June 2004

Leaders and contributors

Charles Rapp Maintainer

Resources and communication

AudienceResource typeURI
DeveloperVCS Repository Webviewhttp://sourceforge.net/cvs/?group_id=8964
Bug TrackingVCS Repository Webviewhttp://sourceforge.net/tracker/?group_id=8964&atid=108964
HelpMailing List Info/Archivehttp://lists.sourceforge.net/mailman/listinfo/smc-announce
SupportMailing List Info/Archivehttp://lists.sourceforge.net/mailman/listinfo/smc-users

Software prerequisites

Required to useJRE 1.4.1 or later

This entry (in part or in whole) was last reviewed on 12 January 2017.


Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the page “GNU Free Documentation License”.

The copyright and license notices on this page only apply to the text on this page. Any software or copyright-licenses or other similar notices described in this text has its own copyright notice and license, which can usually be found in the distribution or license text itself.