I've long been a fan of state machines implemented in software. Most of my colleagues roll their eyes when I display my enthusiasm for them. I've generally considered this to be symptomatic of my slightly odd background in digital hardware design, where state machines are the norm. Most software developers know state machines only from school, if at all. I use them fairly often, even for very small and simple problems. Generally I roll my own state machine from scratch, though for more complex state machines I've used libraries like this one.
Alan Skorkin has some ideas about why state machines are infrequently used. And why they're fluffy bunnies...
Post a Comment