Relational programming: design and implementation of a prototype interpreter
Brown, John R.
Mitton, Stephen G.
MacLennan, Bruce L.
Davis, Daniel L.
MetadataShow full item record
Relational programming is a methodology which combines the advantages of functional programming with the relatively simple laws which govern relations. The goal is to give the programmer an environment which allows a higher level of programming abstraction than currently exists, an easier approach to proving programs correct, and a language which can support new parallel architectures. In this report, the design and implementation of a prototype interactive interpreter for a relational programming language is presented. The reasoning behind the decision to use LISP as the implementation language is presented followed by an in depth discussion of the design issues involved and the implementation decisions made. How to use the interpreter and future research topics are discussed. Also several appendices are provided which include the grammar, the relational operators implemented, and the documented LISP code.
Approved for public release; distribution is unlimited
Showing items related by title, author, creator and subject.
MacLennan, Bruce J. (Monterey, California. Naval Postgraduate School, 1986-11); NPS52-86-023Relational programming is a style of programming in which entire relations are manipulated as data and in which programs are also considered relations. Extensive use is made of higher-order, finite and infinite relations ...
MacLennan, Bruce J. (Monterey, California. Naval Postgraduate School, 1985-05); NPS-52-86-007This is the fourth report of a series exploring the use of the Q programming notation to prototype a programming environment. This environment includes an interpreter, unparser. syntax directed editor, command interpreter, ...
MacLennan, Bruce J. (Monterey, California. Naval Postgraduate School, 1985-05); NPS-52-86-004This is the .third report of a series exploring the use of the Q programming notation to prototype a programming environment. This environment includes an interpreter, unparser, syntax directed editor, command interpreter, ...