“A programming methodology and framework for constructing dynamic and persistent software applications.”
Data: How to represent the state of an application
Logic: How to react to events and update the state accordingly
Persistence: How to maintain and access state in persistent storage

Comprising a run-time system and a programming language: IvoryScript