Hosted onhyper.mediavia theHypermedia Protocol

Community: Glossary

Community: Glossary of State Machine Terms

A living glossary of important state machine, statechart, and actor model concepts.

Terms

State

A condition or mode a system can be in. In UI, examples include loading, idle, error, editing.

Event

Something that happens, usually triggered by the user or system. Events ask the machine to transition.

Transition

A change from one state to another in response to an event.

Guard

A condition that must be true for a transition to occur. Also known as a conditional transition.

Action

A side effect that occurs as part of a transition, such as sending a request or updating context.

Actor

An entity that can receive and send events, and can spawn child actors. In XState v5, every interpreted machine is an actor.

Spawn

Creating a new actor from within an existing actor.

Invoke

Calling a service (promise, callback, observable, or another machine) from within a state.

Parallel State

A state that contains multiple orthogonal regions that are active simultaneously.

History State

A pseudo-state that remembers the previous active sub-state when re-entering a compound state.

Context

Extended state data associated with a machine, separate from the finite state value.

Machine

A finite state machine — defined by states, events, transitions, and initial state.

Statechart

An extended state machine formalism that adds hierarchy, parallelism, and history.

TODO

  • Add diagrams for each term

  • Add code examples for each concept

  • Add links to relevant articles

Do you like what you are reading? Subscribe to receive updates.

Unsubscribe anytime