4.10 Embedded Tools

**Embedded Tools** are a powerful feature in SpreadScript. Their
power derives in part from their ability to return a set
of data, not just a single value. This function makes
non-scalar operations such as matrix multiplication and
"live" recalculation as easy to use as an ordinary
spreadsheet function.

Embedded tools store values in a group of adjacent cells.
These adjacent cells are set to constant formulas with
explicit dependencies on their neighboring cells. For
example, an embedded tool in cell B2 might produce the
formula =1.3459`\`

B2 in cell B3. This formula indicates
that the cell currently contains the constant 1.3459 but
that its value depends on the contents of cell B2 (the
cell containing the embedded tool).

This notion of explicit dependencies is important for recalculation. It guarantees that any cell that references B3 will not be recalculated until after cell B2 is recalculated. This ensures that data generated by the embedded tool is always current.

Embedded tools look like normal functions, and they can
be copied, moved and formatted just as any other formula
in the spreadsheet. However, you must follow one
important guideline: DO NOT combine embedded tools with
other embedded tools in a single formula. For example,
the formula

`INVERT(MMUL(A1..C4,F1..I3))`

is not allowed.

Grey Trout Software

02 March 2003