A Functional Programming Approach to Deductive Databases.
Alexandra Poulovassilis, Carol Small:
A Functional Programming Approach to Deductive Databases.
VLDB 1991: 491-500@inproceedings{DBLP:conf/vldb/PoulovassilisS91,
author = {Alexandra Poulovassilis and
Carol Small},
editor = {Guy M. Lohman and
Am\'{\i}lcar Sernadas and
Rafael Camps},
title = {A Functional Programming Approach to Deductive Databases},
booktitle = {17th International Conference on Very Large Data Bases, September
3-6, 1991, Barcelona, Catalonia, Spain, Proceedings},
publisher = {Morgan Kaufmann},
year = {1991},
isbn = {1-55860-150-3},
pages = {491-500},
ee = {db/conf/vldb/PoulovassilisS91.html},
crossref = {DBLP:conf/vldb/91},
bibsource = {DBLP, http://dblp.uni-trier.de}
}
Abstract
We introduce a persistent functional language called PFL which adapts functional programming to the area of deductive databases, much as logic-based deductivedatabase languages adapt logic programming.
PFL inherits the advantages of functional programming languages, including higher-order functions, static type checking, lazy evaluation, and support for user-defined types and constants.
However, PFL allows functions to be defined incrementally by the insertion and deletion of equations, and stores these equations in the database.
PFL also supports a class of extensionally defined updateable functions called selectors which allow the storage of arbitrarily nested values.
Further functions can be written over selectors which act as derivation rules and which are "invertible" in the sense that they simulate predicates.
We begin the paper by motivating the development of PFL.
We review the respective advantages of functional and logic programming, particularly with respect to database modelling and manipulation, and we compare PFL with other functional database languages.
We describe the salient features of the language and examine its expressivenesswith respect to data modelling, computation and updates.
We also describe the implementation of PFL concentrating in particular on the storage and retrieval of its persistent data.
Copyright © 1991 by the VLDB Endowment.
Permission to copy without fee all or part of this material is granted provided that the copies are not made or
distributed for direct commercial advantage, the VLDB
copyright notice and the title of the publication and
its date appear, and notice is given that copying
is by the permission of the Very Large Data Base
Endowment. To copy otherwise, or to republish, requires
a fee and/or special permission from the Endowment.
Online Paper
CDROM Version: Load the CDROM "Volume 1 Issue 5, VLDB '89-'97" and ...
DVD Version: Load ACM SIGMOD Anthology DVD 1" and ...
Printed Edition
Guy M. Lohman, Amílcar Sernadas, Rafael Camps (Eds.):
17th International Conference on Very Large Data Bases, September 3-6, 1991, Barcelona, Catalonia, Spain, Proceedings.
Morgan Kaufmann 1991, ISBN 1-55860-150-3
References
- [Abi88a]
- Serge Abiteboul, Stéphane Grumbach:
COL: A Logic-Based Language for Complex Objects.
EDBT 1988: 271-293
- [Abi88b]
- Serge Abiteboul, Victor Vianu:
Procedural and Declarative Database Update Languages.
PODS 1988: 240-250
- [Abi89]
- Serge Abiteboul, Paris C. Kanellakis:
Object Identity as a Query Language Primitive.
SIGMOD Conference 1989: 159-173
- [Alb85]
- Antonio Albano, Luca Cardelli, Renzo Orsini:
Galileo: A Strongly-Typed, Interactive Conceptual Language.
ACM Trans. Database Syst. 10(2): 230-260(1985)
- [Ban87]
- François Bancilhon, Ted Briggs, Setrag Khoshafian, Patrick Valduriez:
FAD, a Powerful and Simple Database Language.
VLDB 1987: 97-105
- [Bat88]
- Don S. Batory, T. Y. Leung, T. E. Wise:
Implementation Concepts for an Extensible Data Model and Data Language.
ACM Trans. Database Syst. 13(3): 231-262(1988)
- [Bee88]
- David Beech:
A Foundation for Evolution from Relational to Object Databases.
EDBT 1988: 251-270
- [Bun82]
- Peter Buneman, Robert E. Frankel, Rishiyur S. Nikhil:
An Implementation Technique for Database Query Languages.
ACM Trans. Database Syst. 7(2): 164-186(1982)
- [Car84]
- Luca Cardelli:
Basic Polymorphic Typechecking.
Sci. Comput. Program. 8(2): 147-172(1987)
- [Car85]
- ...
- [Car88a]
- Luca Cardelli:
A Semantics of Multiple Inheritance.
Inf. Comput. 76(2/3): 138-164(1988)
- [Car88b]
- Luca Cardelli:
Types for Data-Oriented Languages.
EDBT 1988: 1-15
- [Che89]
- Weidong Chen, Michael Kifer, David Scott Warren:
HiLog as a Platform for Database Languages.
DBPL 1989: 315-329
- [Cer90]
- Stefano Ceri, Georg Gottlob, Letizia Tanca:
Logic Programming and Databases.
Springer 1990, ISBN 3-540-51728-6
- [Chi90]
- Danette Chimenti, Ruben Gamboa, Ravi Krishnamurthy, Shamim A. Naqvi, Shalom Tsur, Carlo Zaniolo:
The LDL System Prototype.
IEEE Trans. Knowl. Data Eng. 2(1): 76-90(1990)
- [Com79]
- Douglas Comer:
The Ubiquitous B-Tree.
ACM Comput. Surv. 11(2): 121-137(1979)
- [Day87]
- Umeshwar Dayal, Frank Manola, Alejandro P. Buchmann, Upen S. Chakravarthy, David Goldhirsch, Sandra Heiler, Jack A. Orenstein, Arnon Rosenthal:
Simplifying Complex Objects: The PROBE Approach to Modelling and Querying Them.
BTW 1987: 17-37
- [DBP89]
- ...
- [Enb88]
- Richard J. Enbody, H. C. Du:
Dynamic Hashing Schemes.
ACM Comput. Surv. 20(2): 85-113(1988)
- [Gal84]
- Hervé Gallaire, Jack Minker, Jean-Marie Nicolas:
Logic and Databases: A Deductive Approach.
ACM Comput. Surv. 16(2): 153-185(1984)
- [Gra88a]
- ...
- [Gra88b]
- Peter M. D. Gray, David S. Moffat, Norman W. Paton:
A Prolog Interface to a Functional Data Model Database.
EDBT 1988: 34-48
- [Gru89]
- Stéphane Grumbach:
Integration of Functions Defined with Rewriting Rules in Datalog.
DOOD 1989: 349-368
- [Hei88]
- Sandra Heiler, Stanley B. Zdonik:
Views, Data Abstraction, and Inheritance in the FUGUE Data Model.
OODBS 1988: 225-241
- [Hen80]
- ...
- [Hor90]
- ...
- [Kif89]
- Michael Kifer, James Wu:
A Logic for Object-Oriented Logic Programming (Maier's O-Logic Revisited).
PODS 1989: 379-393
- [Kul86]
- K. G. Kulkarni, Malcolm P. Atkinson:
EFDM: Extended Functional Data Model.
Comput. J. 29(1): 38-46(1986)
- [Mor89]
- ...
- [Myc84]
- Alan Mycroft, Richard A. O'Keefe:
A Polymorphic Type System for Prolog.
Artif. Intell. 23(3): 295-307(1984)
- [Nik85]
- ...
- [Pey87]
- Simon L. Peyton Jones:
The Implementation of Functional Programming Languages.
Prentice-Hall 1987
- [Pou90]
- Alexandra Poulovassilis, Peter J. H. King:
Extending the Functional Data Model to Computational Completeness.
EDBT 1990: 75-91
- [Shi81]
- David W. Shipman:
The Functional Data Model and the Data Language DAPLEX.
ACM Trans. Database Syst. 6(1): 140-173(1981)
- [Sma90]
- ...
- [Smi83]
- ...
- [Ull88]
- Jeffrey D. Ullman:
Principles of Database and Knowledge-Base Systems, Volume I.
Computer Science Press 1988, ISBN 0-7167-8158-1
Contents - [Xu89]
- Jiyang Xu, David Scott Warren:
A Type Inference System for Prolog.
ICLP/SLP 1988: 604-619
Copyright © Tue Mar 16 02:22:02 2010
by Michael Ley (ley@uni-trier.de)