ECOOP 2015
Sun 5 - Fri 10 July 2015 Prague, Czech Republic
Wed 8 Jul 2015 15:30 - 16:00 at Bohemia - Objects Chair(s): Kim Bruce

Foundational models of object-oriented constructs typically model objects as records with a structural type. However, many object-oriented languages are class-based; statically-typed formal models of these languages tend to sacrifice the foundational nature of the record-based models, and in addition cannot express dynamic class loading or creation. In this paper, we explore how to model statically-typed object-oriented languages that support dynamic class creation using foundational constructs of type theory. We start with an extensible tag construct motivated by type theory, and adapt it to support static reasoning about class hierarchy and the tags supported by each object. The result is a model that better explains the relationship between object-oriented and functional programming paradigms, suggests a useful enhancement to functional programming languages, and paves the way for more expressive statically typed object-oriented languages. In that vein, we describe the design and implementation of the Wyvern language, which leverages our theory.

Wed 8 Jul
Times are displayed in time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

15:30 - 17:00: ObjectsResearch Track at Bohemia
Chair(s): Kim BrucePomona College
15:30 - 16:00
A Theory of Tagged Objects
Research Track
Joseph LeeCarnegie Mellon University, Jonathan AldrichCarnegie Mellon University, Troy ShawVictoria University of Wellington, Alex PotaninVictoria University of Wellington
16:00 - 16:30
Brand Objects for Nominal Typing
Research Track
Timothy JonesVictoria University of Wellington, Michael HomerVictoria University of Wellington, James NobleVictoria University of Wellington
16:30 - 17:00
Transparent Object Proxies in JavaScript
Research Track
Matthias KeilUniversity of Freiburg, Peter ThiemannUniversity of Freiburg