Journal:Informatica
Volume 18, Issue 1 (2007), pp. 37–54
Abstract
The paper presents, first, the Structural Blanks (SB) approach, then a method to compose loop programs. SB is an approach for expressing computations based on recurrence relations and focuses on data dependencies in loops. The paper presents language constructs and semantics for expressing programs that have complex data dependency patterns. These constructs are expressed using structural “blanks” for computations based on recurrence relations. In SB the recurrence structure and the functional part of a recurrence relation may be described separately. Therefore declarative representation of data dependencies is examined. SB aims at supporting the transformational development and reuse of program modules. The approach deals with two aspects: pragmatics and semantics. In the paper we aim at: (1) developing a theory and language for functional and structural modules, (2) an algorithm for composition of structural modules. The approach is illustrated by toy problems: the Fibonacci function, heat flow, etc. Hence the reuse and verification are viewed as those of, e.g., stacks, queues, bubble sort, etc.
Journal:Informatica
Volume 6, Issue 4 (1995): Special Issue on Information Systems and Software Systems Engineering, pp. 397–444
Abstract
We present two methods for expressing computations based on recurrence relations and discuss their relative merits. One method, the structural blanks approach, is built on top of traditional programming languages like Fortran or Pascal. It aims at program reuse and bases a certain architecture of software packages. The other method, the constructive recursive approach, is based on recursive relations over graphs.