Repository logo

Infoscience

  • English
  • French
Log In
Logo EPFL, École polytechnique fédérale de Lausanne

Infoscience

  • English
  • French
Log In
  1. Home
  2. Academic and Research Output
  3. Conferences, Workshops, Symposiums, and Seminars
  4. Type Soundness for Dependent Object Types (DOT)
 
conference paper

Type Soundness for Dependent Object Types (DOT)

Rompf, Tiark  
•
Amin, Nada  
2016
Acm Sigplan Notices
ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)

Scala's type system unifies aspects of ML modules, object-oriented, and functional programming. The Dependent Object Types (DOT) family of calculi has been proposed as a new theoretic foundation for Scala and similar expressive languages. Unfortunately, type soundness has only been established for restricted subsets of DOT. In fact, it has been shown that important Scala features such as type refinement or a subtyping relation with lattice structure break at least one key metatheoretic property such as environment narrowing or invertible subtyping transitivity, which are usually required for a type soundness proof. The main contribution of this paper is to demonstrate how, perhaps surprisingly, even though these properties are lost in their full generality, a rich DOT calculus that includes recursive type refinement and a subtyping lattice with intersection types can still be proved sound. The key insight is that subtyping transitivity only needs to be invertible in code paths executed at run time, with contexts consisting entirely of valid runtime objects, whereas inconsistent subtyping contexts can be permitted for code that is never executed.

  • Files
  • Details
  • Metrics
Type
conference paper
DOI
10.1145/3022671.2984008
Web of Science ID

WOS:000393581000036

Author(s)
Rompf, Tiark  
Amin, Nada  
Date Issued

2016

Publisher

Assoc Computing Machinery

Publisher place

New York

Published in
Acm Sigplan Notices
Total of pages

18

Volume

51

Issue

10

Start page

624

End page

641

Subjects

dependent object types

•

DOT

•

Scala

•

soundness

Editorial or Peer reviewed

REVIEWED

Written at

EPFL

EPFL units
LAMP1  
Event nameEvent placeEvent date
ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA)

Amsterdam, NETHERLANDS

NOV 02-04, 2016

Available on Infoscience
March 27, 2017
Use this identifier to reference this record
https://infoscience.epfl.ch/handle/20.500.14299/135989
Logo EPFL, École polytechnique fédérale de Lausanne
  • Contact
  • infoscience@epfl.ch

  • Follow us on Facebook
  • Follow us on Instagram
  • Follow us on LinkedIn
  • Follow us on X
  • Follow us on Youtube
AccessibilityLegal noticePrivacy policyCookie settingsEnd User AgreementGet helpFeedback

Infoscience is a service managed and provided by the Library and IT Services of EPFL. © EPFL, tous droits réservés