Vad är automatbaserad programmering?

Automatbaserad programmering är ett datorprogrammeringsparadigm som behandlar delar av programmet som ändlig automat. Varje automat kan ta ett "steg" åt gången, och genomförandet av programmet är uppdelat i enskilda steg. Stegen kommunicerar med varandra genom att ändra värdet på en variabel som representerar "staten" och styrflödet av programmet bestäms av värdet av den variabeln.

"State" -variabeln kan vara en enkel enumdatatyp, men mer komplexa datastrukturer kan användas. En vanlig teknik är att skapa ett tillståndsövergångstabell, en tvådimensionell grupp innefattande rader som representerar varje möjligt tillstånd och kolumner som representerar ingångsparametern. Värdet på bordet där raden och kolumnen möts är nästa tillstånd som maskinen ska övergå till om båda villkoren är uppfyllda.

Finite state machine, Input, Paradigm, Programmeringsvillkor