Programs and Datatypes

  • Henk Doornbos
  • Netty van Gasteren
  • Roland Backhouse
Part of the Advances in Computing Sciences book series (ACS)


We are programmers, in the sense that it is our concern to improve the process of program construction. Therefore we want to answer questions like: What is programming, why is it so difficult and error-prone, and how can we learn what is needed to make the process more manageable? In the following we shall address these issues in a relational framework. Section 10.1 gives an introductory overview explaining the background to our approach. Section 10.2 shows how we deal with (recursive and non-recursive) datatypes in the relational framework. Section 10.3 discusses programs in this context, concentrating on a class of programs characterized by relational equations of a specific but quite general shape. Program termination is the subject of Section 10.4. Finally, Section 10.5 briefly touches on the design and execution of (terminating) programs. For a more extensive treatment see [Doornbos 1996].


Fusion Rule Relation Algebra Parse Tree Recursive Call Relational Framework 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Square brackets denote lists; xSy denotes that relation S relates x to y.Google Scholar
  2. 2.
    We render program specifications by relations with input from the left and output to the right. As a consequence, the relational rendering of a function has the function argument on the left.Google Scholar
  3. 3.
    The use of the word “junk” here should not be confused with the name “junc” given to the co-generator of disjoint sum. The latter is short for “junction” and the former means waste or trash.Google Scholar
  4. 4.
    According to Fokkinga [Fokkinga 1992], the term hylo(morphism) was coined by Erik Meijer.Google Scholar

Copyright information

© Springer-Verlag Wien 1997

Authors and Affiliations

  • Henk Doornbos
  • Netty van Gasteren
  • Roland Backhouse

There are no affiliations available

Personalised recommendations