Figure 6.1 shows the conceptual design. At the lowest level the basic representations and operations on signed binary and dyadic streams and their (mantissa, exponent) extensions are implemented. These are used to implement conversions between representations, algorithms which use both representations, limits of sequences and transcendental functions, functional operations, and conversions between signed binary and decimal. At the top level, the calculator requires a user interface to obtain and parse input. The other modules provide the functionality to compute the result of the expression and generate an output string which can be returned to the user through the user interface.