@calvin @dredmorbius @pnathan @brennen right, Excel and its ancestors (Visicalc) are a great example (I think) of what's now being called 'functional reactive programming'.
What if the whole GUI was like an Excel spreadsheet, and widgets were cells? They have a value, the value can be changed, it doesn't care how the value changes but if it does, that change propagates to all observers.