dict.org

The DICT Development Group


Search for:
Search type:
Database:

Database copyright information
Server information


1 definition found
 for functional database
From The Free On-line Dictionary of Computing (30 December 2018) :

  functional database
  
      A database which uses a functional
     language as its query language.
  
     Databases would seem to be an inappropriate application for
     functional languages since, a purely functional language
     would have to return a new copy of the entire database every
     time (part of) it was updated.  To be practically scalable,
     the update mechanism must clearly be destructive rather than
     functional; however it is quite feasible for the query
     language to be purely functional so long as the database is
     considered as an argument.
  
     One approach to the update problem would use a monad to
     encapsulate database access and ensure it was single
     threaded.  Alternative approaches have been suggested by
     Trinder, who suggests non-destructive updating with shared
     data structures, and Sutton who uses a variant of a Phil
     Wadler's linear type system.
  
     There are two main classes of functional database languages.
     The first is based upon Backus' FP language, of which
     FQL is probably the best known example.  Adaplan is a more
     recent language which falls into this category.
  
     More recently, people have been working on languages which are
     syntactically very similar to modern functional programming
     languages, but which also provide all of the features of a
     database language, e.g. bulk data structures which can be
     incrementally updated, type systems which can be incrementally
     updated, and all data persisting in a database.  Examples are
     PFL [Poulovassilis&Small, VLDB-91], and Machiavelli [Ohori
     et al, ACM SIGMOD Conference, 1998].
  
     Query optimisation is very important for database languages
     in general and the referential transparency of functional
     languages allows optimisations which would be harder to verify
     in presence of side-effects.
  
     [Trinder, P., "Referentially transparent database languages",
     1989 Glasgow Workshop on Functional programming]
  
     [Breazu-Tannen et al., DBPL-91].
  
     [Poulovassilis, VLDB-94].
  
     (1995-05-09)
  

Contact=webmaster@dict.org Specification=RFC 2229