Cascade uses observable and computed properties to synchronize data across its Objects. To do this, it uses a form of Reactive Programming, in which values across the data structure are linked together. So if a value is changed in one portion, other portions might React and update themselves.

Computed Properties

A computed property is merely a function which runs to calculate a value. However, if the computed references an observable property, and that property is updated, the computed will be run again.

Push Updates

When an observable updates, its values is pushed to its subscribers. However, those subscribers then wait for all changes to be, so that updates can be processed all at once.

Pull Updates

When an computed has been marked dirty, and something needs its value immediately, it will be calculated immediately.