Dave Voorhi developed an implementation of Darwen and Date's "Tutorial D", called "Rel". I decided to download it and play around to see how it works. Coming from the SQL world, I thought I'd give some brief comparisons.
To demonstrate the differences, I will create a "zoo" database in MySQL and Tutorial D. The database consists of animals, which are members of a zoo. Each animal must also belong to a species.
Creating Relations
SQL
Tutorial D
Inserting Tuplets
SQL
Tutorial D
Also, inserting NULLs in Tutorial D is forbidden. So while this works in SQL
Tutorial D complains.
Selecting data
SQL
Tutorial D
Joins
SQL
Tutorial D
Running a similar query in SQL will return multiple rows, rendering the result meaningless.
I gotta say, SQL is indeed quite clunky. How can I get in on this manifesto! But Google searches to dig further return nothing but expired pages. Even finding the "Third Manifesto" was tricky. Why isn't there more interest in this subject?
Fortunately, there are a couple of useful links to better grasp Tutorial D's syntax.
Hugh Darwen's book, "An Introduction to Relational Database Theory" (free to download)
Ahmed Yusuf Almull's dissertation on translating between SQL and Tutorial D
Rel's download page
I have an impresion that Tutorial D is not well received in academic database community where Prolog and Datalog are kings.
ReplyDelete