Patent ID: 7549115

Claim:
An architecture stored on one or more computer-readable media, the architecture comprising: a complementary pair of spreadsheet and grid components for a table created in a markup language in a document written in the markup language, the document comprising the table and text outside of the table; the spreadsheet component receiving data and formulas entered into the table; the grid component tracking the data and formulas in relation to cells in the table; a workbook linking the spreadsheet component and the grid component; and a recalculation engine to recalculate the formulas following a change to data in the grid component, the recalculation engine configured to maintain a bi-directional linked list of the formulas in the document, which linked list is traversed by the recalculation engine evaluating the formulas in the list that were effected by the change to data in the grid component, wherein the recalculation engine is configured to move each formula in the linked list to the end of the linked list if found to depend from another formula in the list that has yet to be evaluated.