9 citations · 14 across the 4 of their papers we have counts for
8 papers
Qualifying System F-sub
Edward Lee, Yaoyu Zhao, James You +3
Type qualifiers offer a lightweight mechanism for enriching existing type systems to enforce additional, desirable, program invariants. They do so by offering a restricted but effe…
Simple Reference Immutability for System F-sub
Edward Lee, Ondřej Lhoták
Reference immutability is a type based technique for taming mutation that has long been studied in the context of object-oriented languages, like Java. Recently, though, languages…
Scoped Capabilities for Polymorphic Effects
Martin Odersky, Aleksander Boruch-Gruszecki, Edward Lee +2
Type systems usually characterize the shape of values but not their free variables. However, many desirable safety properties could be guaranteed if one knew the free variables cap…
Tracking Captured Variables in Types
Aleksander Boruch-Gruszecki, Jonathan Immanuel Brachthäuser, Edward Lee +2
Type systems usually characterize the shape of values but not their free variables. However, there are many desirable safety properties one could guarantee if one could track how r…
Undecidability of and Its Decidable Fragments
Jason Hu, Ondřej Lhoták
Dependent Object Types (DOT) is a calculus with path dependent types, intersection types, and object self-references, which serves as the core calculus of Scala 3. Although the cal…
A Path To DOT: Formalizing Fully Path-Dependent Types
Marianna Rapoport, Ondřej Lhoták
The Dependent Object Types (DOT) calculus aims to formalize the Scala programming language with a focus on path-dependent types types such as that depend on…
A Simple Soundness Proof for Dependent Object Types
Marianna Rapoport, Ifaz Kabir, Paul He +1
Dependent Object Types (DOT) is intended to be a core calculus for modelling Scala. Its distinguishing feature is abstract type members, fields in objects that hold types rather th…
Mutable WadlerFest DOT
Marianna Rapoport, Ondřej Lhoták
The Dependent Object Types (DOT) calculus aims to model the essence of Scala, with a focus on abstract type members, path-dependent types, and subtyping. Other Scala features could…