SMC takes a state machine stored in a .sm file and generates a State pattern in 14 programming languages. Includes: default transitions, transition args, transition guards, push/pop transitions and Entry/Exit actions. See User Manual for more info.

Project Activity

See All Activity >

License

Mozilla Public License 1.1 (MPL 1.1)

Follow SMC - The State Machine Compiler

SMC - The State Machine Compiler Web Site

Other Useful Business Software
Everything Your Small Business Needs to Succeed | Connecteam Icon
Everything Your Small Business Needs to Succeed | Connecteam

Connecteam is an award-winning all-in-one employee management solution for daily operations, communications, and human resource management.

Easily engage and manage non-desk employees with Connecteam’s mobile-first platform that helps improve communication, enhance daily processes and increase productivity with custom checklists, forms, and reports. Schedule shifts and track accurate work hours with Connecteam’s automated GPS time clock and easily export approved timesheets to payroll. Connecteam helps you keep your employees sharp thanks to knowledge base centers and advanced training courses. Raise morale with employee recognition rewards and keep the entire company updated through the main news feed.
Rate This Project
Login To Rate This Project

User Ratings

★★★★★
★★★★
★★★
★★
11
0
0
0
0
ease 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 4 / 5
features 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 4 / 5
design 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 4 / 5
support 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 4 / 5

User Reviews

  • SMC has been invaluable to me in more than a few projects to reduce code complexity. Thanks to SMC I have been able to simplify program state behavior for programs in C++ and Java at least. This allowed for relatively linear efforts & time (v/s exponential) as program complexity grew. After searching for similar solutions many years go and again recently, SMC seems by far seems most effective!
  • Great to have a complete tool that... - uses the UML notation. - has language for expressing state machines in a single .sm file. - ability to generate code for lots of programming languages based on a single .sm file. - generate a visual presentation using Graphviz. Keep up the great work with this tool! I really appreciate it. :-D
  • very good project, thanks!
  • thanks man, great soft!
  • This is the second Finite State Machine generator I have used, and the most flexible. The first was QP, which worked well on the Windows C++ platform I was developing on in 2006. But the number of target platforms for QP is small, and this licensing is complicated. I am now using SMC for some networking logic in my iOS App ( http://dr.edgemoor.com ) and plan to expand its use for other items. Advantages: 1) Simple to use and understand 2) Fairly easy to debug. If you make a mistake in you FSM definition, it will toss a nasty run time error that will point you to what is missing. 3) I want to port my App to Android and possibly Windows Phone, and SMC will work well for this. I plan to put the maximum amount of logic into state machine definitions to make porting simpler. 4) The state charts that SMC generates are really useful. I include them in my DOxygen project documentation, and can quickly look at them to remember how things are working. Disadvantages: 1) Needs more volunteers to add to the documentation. ( Of course, I could be one of those volunteers, so I can't complain. )
Read more reviews >