SMC liest einen Zustandsautomaten aus einer .sm-Datei und erzeugt die Zustands-Patternklassen in neun Programmiersprachen. Seine Features sind unter anderem Default-Übergänge, Übergänge mit Argumenten, Übergangs-Guards, Push/Pop-Übergänge und Entry/Exit-Aktionen. Es benötigt Java SE 1.4.1 oder neuer. (non)