Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > C++ > [ANN] SMC - State Machine Compiler v. 3.1.1

Thread Tools

[ANN] SMC - State Machine Compiler v. 3.1.1

Charles Rapp
Posts: n/a
SMC - The State Machine Compiler v. 3.1.1

Requires: Java 1.4.1 SE (Standard Edition) or better.
Home Page:

================================================== ===============
What's New?
================================================== ===============

(No new features.)

================================================== ===============
Bug fixes
================================================== ===============

+ Fixed error when reading in .sm files larger than 4,096 bytes.
SMC reads in 4,096 bytes at a time into an internal buffer,
overwritting the buffer's previous contents.
SMC will "back up" its buffer index when it decides a character
does not belong to the current lexical token. The bug occurrs
when SMC backs up past index 0. This has been corrected by
keeping the previous buffer's last two bytes available when
reading the next 4,096 bytes (SMC backs up at most 2 bytes.)

+ (-c++) Removed "using namespace std" from the "-g" generated
.cpp file. All generated references to the std namespace are
now fully-qualified with "std::".

Note: This means any std namespace references in your SMC
code must be fully-qualified as well. SMC will not
add the "std::" scoping for you.

================================================== ===============
What is SMC?
================================================== ===============

SMC takes a state machine description (stored in a .sm file) and
generates State pattern classes in a target language (C++, Java,
Tcl, VB.Net and C# are currently supported). SMC is a
console-based app written in Java which means SMC can run
anywhere Java (1.4.1 or better) can run. The download package
includes an example directory showing how SMC can used with C++,
Java, Tcl (requires [incr Tcl] package), VB.Net and C#. The
examples range from trivial to GUI apps.

================================================== ===============
How can I learn more?
================================================== ===============

At You can access the SMC
Programmer's Manual there as well. While you're there, check out
the SMC demo applet at

================================================== ===============
Where can I get it?
================================================== ===============

SMC and the Programmer's Manual can be downloaded from You can also use this
website to:

+ Ask questions (via the Public Forum's Help discussion)
+ Submit a bug.
+ Join a mailing list.
+ Access SMC documentation.
+ Access SMC's source code in the CVS repository.

(Note: in order to make full use of SourceForge capabilities,
you must be a SourceForge member. If you are not a member,
head over to
and sign up. SourceForge membership is free - no money, no
requirements and NO SPAM! Membership has its benefits.)

If you have any problems, surf over to and report
the problem. I will try and answer you via the Help forum as
quickly as I can.


Charles Rapp
(E-Mail Removed)
Reply With Quote

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off

Similar Threads
Thread Thread Starter Forum Replies Last Post
[ANN] SMC - State Machine Compiler v. 3.1.2 Charles Rapp C++ 0 10-09-2004 03:57 AM
[ANN] SMC - State Machine Compiler v. 3.1.0 Charles Rapp C++ 0 09-06-2004 02:57 PM
[ANN] SMC - State Machine Compiler v. 3.0.0 Charles Rapp C++ 0 05-31-2004 08:24 PM
[ANN] SMC - State Machine Compiler v. 2.2.0 Charles Rapp C++ 0 09-01-2003 09:00 PM
[ANN] SMC - State Machine Compiler v. 2.1.0 Charles Rapp C++ 0 07-09-2003 03:44 AM