Architectural pattern common in game engines. Entities are IDs, components are plain data attached to entities, and systems encode behavior by operating on entities that have a given set of components. Used by the Kotlin roguelike framework driven from Ruby in the Game Hunter lightning talk.