|
D (data language specification)
|
D is a set of prescriptions for what Christopher J. Date and Hugh Darwen believe a relational database management system ought to be like. It is proposed in their paper The Third Manifesto, first published in 1994 and elaborated on in several books since then. Overview D by itself is an abstract language specification. It does not specify language syntax. Instead, it specifies desirable and undesirable language characteristics in terms of prescriptions and proscriptions. Thus, D is not a language but a family of both implemented and future languages. A "valid D" must have a certain set of features, and exclude a different set of features which Date and Darwen consider unwise and contrary to the relational model proposed by E. F. Codd in 1970. A valid D may have additional features which are outside the scope of relational databases. Tutorial D Tutorial D is a specific D which is defined and used for illustration in The Third Manifesto. Implementations of D need not have the same syntax as Tutorial D. The purpose of Tutorial D is both educational and to show what a D might be like. Rel is an implementation of Tutorial D. Implementations There are numerous implementations of D, with varying degrees of maturity and compliance. * D's first implementation is D4, written in . D4 is the flagship language of Alphora's Dataphor. * Rel is the most complete implementation of Tutorial D (including the Inheritance Model), and is heavily used in teaching. * Andl is an relational programming language with SQLite or PostgreSQL backend and Thrift interfaces. * Alf - Relational Algebra at your Fingertips, a Ruby implementation of relational algebra inspired by Tutorial D. * - a mathematically-coherent relational algebra database management system written in Haskell. * Dee makes Python relational. * Duro - a relational database management system * [http://shark.armchair.mb.ca/~erwin/ SIRA_PRISE] stands for Straightforward Implementation of a Relational Algebra - Prototype of a Relational Information Storage Engine. * TclRal - Tcl Relational Algebra Library, TclRal is an implementation of relational algebra, based on concepts in The Third Manifesto, as an extension of the Tcl language.
|
|
|