TOP
Search the Dagstuhl Website
Looking for information on the websites of the individual seminars? - Then please:
Not found what you are looking for? - Some of our services have separate websites, each with its own search option. Please check the following list:
Schloss Dagstuhl - LZI - Logo
Schloss Dagstuhl Services
Seminars
Within this website:
External resources:
  • DOOR (for registering your stay at Dagstuhl)
  • DOSA (for proposing future Dagstuhl Seminars or Dagstuhl Perspectives Workshops)
Publishing
Within this website:
External resources:
dblp
Within this website:
External resources:
  • the dblp Computer Science Bibliography


Research Meeting 20489

Forschungsaufenthalt

( Nov 23 – Nov 27, 2020 )

Permalink
Please use the following short url to reference this page: https://www.dagstuhl.de/20489

Organizer

Contact

Description

While n-ary relations are a universal modelling construct (as evidenced, for instance, by predicate logic and the relational data model), object-oriented programming is tied to classes and pointers, that is, to unary and directed binary to-one relations, essentially modelling the world using (total) functions on objects. This linguistic restriction leads to awkward and fragile programs, as evidenced, for instance, by the countless attempts of fixing Hoare’s “billion dollar mistake”, the introduction of the null pointer.

Inspired by Daniel Jackson’s relational logic based modelling language Alloy, I used my five-day forschungsaufenthalt at Dagstuhl to develop a core calculus of object-relational programming, that is, to devise a minimal programming language that links objects through n-ary relations rather than fields (binary functions). Deviating from many earlier proposals of making object-oriented programming more relational, relations are not first class, and are accessed (navigated and updated) using roles as generalizations of fields. The core calculus is untyped; instead, it statically enforces mapping constraints on relations, that is, cardinality ratios such as 1:N or N:1:M, which are widely used in data modelling and which are notoriously hard to preserve under update.

During my forschungsaufenthalt, the Dagstuhl staff provided me once more with a perfect research environment, allowing me to reach my personal limits, with no interruptions or other everyday bothers to ascribe them to.

Copyright Friedrich Steimann