What exactly happens if `width` changes? Are x and chart immediately recomputed, then because of x changed, xAxis and chart (for the second time), then because xAxis changed, chart (for the third time) - or are they always recomputed in an order that prevents this?
Computation is batched together into frames (up to 60FPS). So, if width changes, everything downstream (x, xAxis, chart) is marked as dirty and then recomputed in one pass, in topological order.
What if there are accidentally two cells defining the same name (say "X") to two different values? And the two cells are on the same topological level so the order they are computed are arbitrary. Would the cell that references X throw an error or just default to use whichever value defined last?