6 research outputs found
Deriving Incremental Implementations from Algebraic Specifications
We present a technique for deriving incremental implementations for a subclass of algebraic specifications, namely, conditional well-presented primitive recursive schemes. We use concepts of the translation of well-presented primitive recursive schemes to strongly noncircular attribute grammars, storing results of function applications and their parameters as attributes in an abstract syntax tree of the first argument of the function in question. An attribute dependency graph is used to guide incremental evaluation. The evaluation technique is based on a leftmost innermost rewrite strategy. The technique is extended to conditional well-presented primitive recursive schemes. Whereas in the non-conditional case attribute dependency graphs are static and can be constructed before evaluating a term, when working with conditional equations the the attribute dependency graph is adapted upon evaluation. The class of well-presented primitive recursive schemes is a very natural one fo..