Applicative expressions for relational programming

Date

1992

Authors

Ibrahim, Husain Ibrahim Haji

Journal Title

Journal ISSN

Volume Title

Publisher

Abstract

Functional programming comes in two flavors: one where "functions are first-class citizens" (we call this applicative) and one based on equations (we call this declarative). In relational programming, clauses play the role of equations. Hence pure Prolog is declarative. This thesis provides a basis for the relational analog of applicative functional programming. We provide a new concept of table. We define tables and relations with operators sufficient to translate Horn clauses into applicative form, and es­tablish basic mathematical properties of these operators. We investigate applicative relational programming, and prove the exis­tence of the least model for our applicative transformations of Horn-clause programs. We show how relations can be first-class citizens, using first-order relational variables and expressions. We devise mechanisms for modularity and genericity, and for local scoping of predicates.

Description

Keywords

UN SDG 16: Peace, Justice, and Strong Institutions

Citation