Abstract FP is the programming language defined by J. Backus to demonstrate the virtues of functional programming as opposed to conventional programming in Von Neumann-like languages. In this paper we investigate the use of FP in the framework of relational data bases. In particular, we show how the language can be used to define base relations, to derive views from a collection of relations, and to express complex database queries. The language provides all capabilities of pure algebraic relational languages, but is considerably more powerful. As such, it can be used as a formal specification language to describe the semantics of queries expressed in relational languages, such as Query-By-Example. In addition the algebra of FP programs allows one to formally prove properties of such queries.
[1]
John W. Backus,et al.
The Algebra of Functional Programs: Function Level Reasoning, Linear Equations, and Extended Definitions
,
1981,
ICFPC.
[2]
Jeffrey D. Ullman,et al.
Principles of Database Systems
,
1980
.
[3]
Richard P. Hopkins,et al.
Data-Driven and Demand-Driven Computer Architecture
,
1982,
CSUR.
[4]
C. J. Date.
An Introduction to Database Systems
,
1975
.
[5]
John W. Backus,et al.
Can programming be liberated from the von Neumann style?: a functional style and its algebra of programs
,
1978,
CACM.