Objects, Processes, and Constraints

Many databases draw sharp intellectual and implementation distinctions among objects (or data), processes to query or manipulate the objects, and constraints which apply either to particular manipulations or to the system as a whole, such as numerical simulation of a set of differential equations. In extreme cases, data are stored in one language, retrieved in another, and manipulated for ``advanced'' computations by a third. Two common consequences of this approach is that representations of these three informational dimensions tend to be mutually incompatible, and programming and execution of the code can be noticeably confused and inefficient. This phenomenon has been called impedance mismatch .

To avoid these problems, we have implemented the database and its computations in a symmetric manner. The term is meant in two senses:

We exploit other languages and software as appropriate for particular parts of computations, such as advanced mathematics or visual display (see here for a comprehensive listing of tools used): but overall coordination of the computations resides exclusively in Moirai, with the results from other tools passing in and out of the central database.


Back to Klotho's home page.