C
Charles Rapp
SMC - The State Machine Compiler v. 3.1.0
Requires: Java 1.4.1 SE (Standard Edition) or better.
Download: http://sourceforge.net/projects/smc
Home Page: http://smc.sourceforge.net
=================================================================
What's New?
=================================================================
+ SMC now generates C# code using the -csharp command line
option. The generated C# code was tested against Microsoft
DevStudio 7.0.
This is a beta feature. Use accordingly.
Thanks to (name withheld upon request) for providing the C#
code generator, library classes and examples.
+ (VB.net and C#) Added "property = value" action to SMC syntax.
This supports the .net property assignment syntax.
+ Added guards to Default transitions. However, Default
transitions still may not have parameters.
+ Added "-verbose" option which causes SMC to output messages as
it compiles.
+ Added "-d directory" option which tells SMC where to place
generated files. Default is the same directory as the .sm file.
=================================================================
Bug fixes
=================================================================
+ (-c++) Corrected error with TRACE macro in statemap.h.
+ Corrected error when compiling a .sm file which resides in
a another directory. This caused incorrect code to be generated
particularly for C++.
+ Corrected error when SMC threw a ParseException which was
reported as an SMC error. A ParseException is not an SMC error
but an unrecoverable error in the user's FSM code. A
ParseException is now reported as such.
=================================================================
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 http://smc.sourceforge.net. You can access the SMC
Programmer's Manual there as well. While you're there, check out
the SMC demo applet at http://smc.sourceforge.net/SmcDemo.htm.
=================================================================
Where can I get it?
=================================================================
SMC and the Programmer's Manual can be downloaded from
http://sourceforge.net/projects/smc. 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 http://sourceforge.net/account/register.php
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
http://sourceforge.net/forum/forum.php?forum_id=27865 and report
the problem. I will try and answer you via the Help forum as
quickly as I can.
Enjoy!
Charles Rapp
mailto:[email protected]
Requires: Java 1.4.1 SE (Standard Edition) or better.
Download: http://sourceforge.net/projects/smc
Home Page: http://smc.sourceforge.net
=================================================================
What's New?
=================================================================
+ SMC now generates C# code using the -csharp command line
option. The generated C# code was tested against Microsoft
DevStudio 7.0.
This is a beta feature. Use accordingly.
Thanks to (name withheld upon request) for providing the C#
code generator, library classes and examples.
+ (VB.net and C#) Added "property = value" action to SMC syntax.
This supports the .net property assignment syntax.
+ Added guards to Default transitions. However, Default
transitions still may not have parameters.
+ Added "-verbose" option which causes SMC to output messages as
it compiles.
+ Added "-d directory" option which tells SMC where to place
generated files. Default is the same directory as the .sm file.
=================================================================
Bug fixes
=================================================================
+ (-c++) Corrected error with TRACE macro in statemap.h.
+ Corrected error when compiling a .sm file which resides in
a another directory. This caused incorrect code to be generated
particularly for C++.
+ Corrected error when SMC threw a ParseException which was
reported as an SMC error. A ParseException is not an SMC error
but an unrecoverable error in the user's FSM code. A
ParseException is now reported as such.
=================================================================
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 http://smc.sourceforge.net. You can access the SMC
Programmer's Manual there as well. While you're there, check out
the SMC demo applet at http://smc.sourceforge.net/SmcDemo.htm.
=================================================================
Where can I get it?
=================================================================
SMC and the Programmer's Manual can be downloaded from
http://sourceforge.net/projects/smc. 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 http://sourceforge.net/account/register.php
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
http://sourceforge.net/forum/forum.php?forum_id=27865 and report
the problem. I will try and answer you via the Help forum as
quickly as I can.
Enjoy!
Charles Rapp
mailto:[email protected]