4 ms·
It's a combination of 3 things: * Parts are fundamentally declarative and parts are fundamentally imperative. This applies both to the abstract problem, and t
by o11c 3y ago
It's a combination of 3 things:
* Parts are fundamentally declarative and parts are fundamentally imperative. This applies both to the abstract problem, and the approach taken in particular toolkits, and the border is not in the same place.
* The state involved is stored in at least 2 places which are distant from each other, and that opens all sorts of logic and timing problems.
* The same GUI framework gets used both for "wait for an event" UIs and "update every frame" UIs.
Abstraction is hard.