Explicans will be a bit like a cross between traditional spreadsheets and traditional programming languages. The sections below explain how it differs from each.
Differences from traditional spreadsheets:
- No cell coordinates like C26 or R26C3. Instead each element must be given a name.
Reasoning: Cell references inhibit understanding because they are not intrinsically meaningful. Also if a quantity has no name, readers may not know what it is supposed to represent.
- Equal importance are given to names, formulas, and values. In other words, the default view will display on-screen names, formulas, and values.
Reasoning: In order to understand a calculated value, all three of these concepts are vital. A reader must know what quantity we are talking about (the name), how it is being calculated (the formula), and what the result is (the value).
- Hierarchical (tree-like) structure. Many spreadsheets are a sequence of (large) grids, but Explicans typically have a tree-like structure.
Reasoning: Both calculations and explanations are naturally structured as trees. A sequence of grids is not the natural format for conveying information.
- Better type system. A standard spreadsheet contains grids of cells and sheets. Explicans will contain lists, multidimensional arrays indexed with intuitive names, basic cells, and possibly other types such as functions.
Reasoning: Intuitive explanations frequently include these concepts, and they are then forced into 2D grids. An explanation that matches the way a human would think about the calculation aids understanding.
Differences from traditional programming languages
- No rigid distinction between creation and running environment. Explicans are not written and then compiled or interpreted.
Reasoning: The idea of an object which is then processed by computer to produce the right outcome is counterintuitive. Explanations are less like computer programs and more like essays, which are written in their final form.
- No formal textual representation.
Reasoning: A textual representation with rigid syntax is another compromise due to computer limitations that is unnecessary for computationally simple calculations.
- Automatic recalculation—at any given moment the explanation will be fully calculated.
Reasoning: The lack of full calculation is solely because of computing limitations. Traditional spreadsheets have shown that automatic recalculation greatly aids the user-friendlyness and intuitiveness of calculation.
- Functional—Explicans avoids state and mutable variables.
Reasoning: Reasoning using state is complicated and unnatural except to programmers; this is why it is seldom used in mathematical explanations.
- Minimal abstraction—explanations are as concrete as possible and don't include advanced programming features.
Reasoning: Explicans is built for non-programmers who would be confused by these features. The capacity for precise abstract thought may be common in programmers and mathematicians but is rarer in businesspeople.
page revision: 0, last edited: 26 Aug 2009 03:41