Wednesday 28 January 2009

Databases: Information System Base Language (ISBL)

Link: Thread on reddit.com

A year ago, someone named weavejester on reddit.com posted an interesting reference to a query language called ISBL.

Some excerpts from the post to illustrate why it is interesting:

Compare this SQL query:
SELECT DISTINCT username, comment_body FROM stories
INNER JOIN comments ON stories.comment_id = comments.comment_id
INNER JOIN users ON comments.user_id = users.user_id
WHERE stories.story_id = 10
And compare it to the equivalent ISBL query:
stories * comments * users % (username, comment_body) : story_id = 10
..., ISBL manages to support the whole range of relational database theory with only 6 basic table operations:
  • union +
  • difference -
  • natural join *
  • intersection .
  • projection %
  • restriction :
Links of interest:
HOPL: The History of Programming Languages entry.
Paper: Optimization of Single Expressions in a Relational Database System.
Paper: The Peterlee Relational Test Vehicle - A system overview.
Powerpoint presentation: CS319 Theory of Databases / Relational Database Models.

No comments:

Post a Comment