Reactor is a lightweight library for reactive programming. It provides reactive variables which automatically update themselves when the things they depend on change. This is similar to how a spreadsheet works, where cells can automatically change their own values in reaction to changes in other cells.
Microsoft have been doing this for some time: https://github.com/Reactive-Extensions/RxJS
Part of MS Open Technologies initiative: https://msopentech.com/