|
|
|
|
|
by marcosdumay
3732 days ago
|
|
If you have more than one layer with implicit mutable state, you are up for emergent behavior. It is not limited to FSM. But FSM are just too easy, so people often use it to make implicit some state that would be explicit otherwise. In this sense, yes, they do cause emergent behavior. The alternatives are joining your state at a single layer, making sure your states are really orthogonal to each other (very hard if both do IO), or making your state explicit so that you can at least verify once you find a problem. |
|
I've found it offends some people, but it works and generally, their way doesn't.
But the founding principle is "trust no one" in distributed systems.