Combinations of structural and nominal object typing in systems such as Scala, Whiteoak, and Unity have focused on extending existing nominal, class-based systems with structural subtyping. The typical rules of nominal typing do not lend themselves to such an extension, resulting in major modifications. Adding object branding to an existing structural system integrates nominal and structural typing without excessively complicating the type system. We have implemented brand objects to explicitly type objects, using existing features of the structurally typed language Grace, along with a static type checker which treats the brands as nominal types. We demonstrate that the brands are useful in the existing implementation of Grace, and provide a formal model of the extension to the language.
Wed 8 JulDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
15:30 - 17:00 | |||
15:30 30mTalk | A Theory of Tagged Objects Research Track Joseph Lee Carnegie Mellon University, Jonathan Aldrich Carnegie Mellon University, Troy Shaw Victoria University of Wellington, Alex Potanin Victoria University of Wellington | ||
16:00 30mTalk | Brand Objects for Nominal Typing Research Track Timothy Jones Victoria University of Wellington, Michael Homer Victoria University of Wellington, James Noble Victoria University of Wellington | ||
16:30 30mTalk | Transparent Object Proxies in JavaScript Research Track |