Formulas create dependencies between cells.
Basic formula support:
Parse formula string: "=SUM(A1:A10)"
Extract cell references
Evaluate with current values
Cache result until dependencies change
Dependency graph:
// B1 = A1 + 1, C1 = B1 * 2
dependencies: {
'B1': ['A1'],
'C1': ['B1']
}
Circular reference detection: Track evaluation stack. Error if cell appears twice.
Recalculation: When A1 changes, recalculate B1, then C1 (topological order).