Advantages of Rel and Tutorial D:
- Tutorial D uses relation-valued variables – known as relvars – instead of the tables used in most database languages. This provides a way to manage information that is consistent with the most familiar elements – variables and values – of easy-to-learn but powerful programming languages.
- Tutorial D supports nested relations, to provide flexibility in modeling data storage requirements and presenting complex query results.
- Tutorial D provides a clean query syntax that exposes the simplicity, elegance, power, and composability of the underlying relational algebra.
- Tutorial D queries do not depend on column order. This reduces the likelihood of programmer error and makes code more maintainable.
- Tutorial D does not allow duplicate rows (tuples) or use NULLs, which helps ensure the predictability and consistency of query results.
- Tutorial D supports advanced database constraints, which go beyond foreign key and “check” constraints in specifying controls on data consistency and integrity.
- Tutorial D is more than a query language; it is a full programming language. It offers an intuitive and highly readable way to provide application functionality within a database, and provide database functionality within a programming language.
- Tutorial D promotes code re-use, which improves maintainability, programmability, and opportunities for optimisation.
- Tutorial D specifies an advanced type system for creating user-defined types of arbitrary complexity.
In short, Rel represents a significant advancement in database technology.
Rel is a work in progress, but is suitable for exploring true relational concepts, implementing non-critical databases, and is an ideal educational tool. Future versions will be usable as an enterprise database management system.
Where is Rel being used?
- University of Derby, Derby, UK
- University of Louvain, Belgium
- Palacky University, Olomouc, Czech Republic
We would like to hear from other universities and educational institutions that use Rel. Please email Dave Voorhis <firstname.lastname@example.org> or Hugh Darwen <email@example.com>.