[LWN Logo]
[LWN.net]
From: Charles Rapp <rapp@acm.org>
Newsgroups: comp.lang.tcl
Subject: [ANN] SMC - State Map Compiler v. 1.0b4 Released
Date: Tue, 27 Mar 2001 02:44:31 GMT

           SMC - The State Map Compiler v. 1.0, Beta 4


Requires:  Java 1.2 SE (Standard Edition)or better.
Download:  http://sourceforge.net/projects/smc
Home Page: http://smc.sourceforge.net

What's New?
A change in when a state's Entry and Exit actions are executed.
Previously, every transition executed the "from" state's Exit
actions and the "to" state's Entry actions. That proved to be
wrong especially in the case of loopback transitions (a loopback
is a transition that ends up in the state from which it started).

SMC v. 1.0, Beta 4 changes when Entry/Exit action execution are
executed depending on transition type:

+ Simple transitions execute the "from" state's Exit actions and
  the "to" state's Entry actions.
+ Loopback transitions do not execute either Exit or Entry
  actions.
+ Push transitions execute only the "to" state's Entry actions.
+ Pop transitions execute only the "from" state's Entry actions.

For more information on Entry and Exit actions, see section 2
of the SMC Programmer's Manual at http://smc.sourceforge.net.


What is SMC?
SMC takes a state map description (stored in a .sm file) and
generates State pattern classes in a target language (C++, Java
or Tcl currently supported). SMC is a console based app written
in Java 1.2 which means SMC can run anywhere Java 1.2 (or better)
can run. The download package includes an example directory
showing how SMC can used with C++, Java and Tcl (requires
[incr Tcl] package). 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.


Where can I get it?
SMC, the Programmer's Manual and source code 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 CVS repository.

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:rapp@acm.org