D4 (programming language)
![]() | This article was nominated for deletion. The discussion was closed on 27 September 2013 with a consensus to merge the content into the article Dataphor. If you find that such action has not been taken promptly, please consider assisting in the merger instead of re-nominating the article for deletion. To discuss the merger, please use the destination article's talk page. (September 2013) |
D4 is a computer language used in Dataphor, a relational database management system.
Syntax
D4 has a Pascal-like syntax. D4 sample code is usually written in UpperCamelCase, which is also widely used in Pascal and Delphi systems.
Like most query languages, D4 has a Data Definition Language (DDL) and a Data Manipulation Language (DML). D4 also has an Imperative Language for procedural code.
Data definition language
The DDL for Dataphor bears many similarities to other DBMSs, but with an obviously Pascal-like twist. Many of the allowed DDL operations, like constraints, allow relational declarative statements to be used, which many believe is superior to the procedural style operations used in SQL.
Data manipulation language
The DML syntax at first glance may appear to be similar to SQLs syntax, but because of D4's closer ties to relational algebra, the syntax has a cleaner definition, and most users greatly prefer it over SQL. [citation needed]
Imperative language
The Imperative Language in D4 is remarkably similar to Pascal in many respects. The largest distinction being that D4 also allows DDL and DML statements to be run in regular procedural code.
History
D4 was named after the similar sounding Dataphor, the system that uses the language. It was some time after these names were decided that it's creators discovered Tutorial D, and the coincidence it had with that name. Since discovering Tutorial D and The Third Manifesto, the creators has used The Third Manifesto as a guide in making Dataphor and D4. Since then, Hugh Darwen has referred to D4, as a notable project in his talk entitled The Askew Wall.[1]
See also
References