# StateMachineCompiler **Repository Path**: tom_ud/StateMachineCompiler ## Basic Information - **Project Name**: StateMachineCompiler - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-12-13 - **Last Updated**: 2024-12-13 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # State Machine Compiler State Machine Compiler inspired by [Robert C. Martin](https://twitter.com/unclebobmartin), AKA "Uncle Bob", and his work. This the State Machine Compiler (SMC) that Robert C. Martin builds in episodes [28](https://cleancoders.com/episode/clean-code-episode-28/show), [29](https://cleancoders.com/episode/clean-code-episode-29/show) and [30](https://cleancoders.com/episode/clean-code-episode-30/show) of [Clean Coders](https://cleancoders.com/), built from scratch in C#. It can be used to create Finite State Machines in several programming languages, like Java, C, Python, and C#, of course. In fact, it's built on C# 😄 # Syntax ``` Actions: Turnstile FSM: TwoCoinTurnstile Initial: Locked { (Base) Reset Locked Lock Locked : Base { Pass Alarming - Coin FirstCoin - } Alarming : Base >AlarmOn action` and exit actions are denoted by `