Scala with Explicit Nulls (Artifact)

Authors Abel Nieto , Yaoyu Zhao, Ondřej Lhoták , Angela Chang, Justin Pu

Thumbnail PDF

Artifact Description

  • Filesize: 326 kB
  • 2 pages

Document Identifiers

Author Details

Abel Nieto
  • University of Waterloo, Canada
Yaoyu Zhao
  • University of Waterloo, Canada
Ondřej Lhoták
  • University of Waterloo, Canada
Angela Chang
  • University of Waterloo, Canada
Justin Pu
  • University of Waterloo, Canada


We would like to thank Sébastien Doeraene, Fengyun Liu, Guillaume Martres, and Martin Odersky for their feedback on our explicit nulls design and their help with Dotty.

Cite AsGet BibTex

Abel Nieto, Yaoyu Zhao, Ondřej Lhoták, Angela Chang, and Justin Pu. Scala with Explicit Nulls (Artifact). In Special Issue of the 34th European Conference on Object-Oriented Programming (ECOOP 2020). Dagstuhl Artifacts Series (DARTS), Volume 6, Issue 2, pp. 14:1-14:2, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2020)



This artifact is a companion to the paper "Scala with Explicit Nulls", where we present a modification to the Scala type system that makes nullability explicit in the types. Specifically, we make reference types non-nullable by default, while still allowing for nullable types via union types. The artifact contains an implementation of this new type system design as a fork of the Dotty (Scala 3) compiler. Additionally, the artifact contains the source code of multiple Scala libraries that we used to evaluate our design.

Subject Classification

ACM Subject Classification
  • Software and its engineering → General programming languages
  • Theory of computation → Denotational semantics
  • Theory of computation → Type theory
  • Software and its engineering → Interoperability
  • Scala
  • Java
  • nullability
  • language interoperability
  • type systems


  • Access Statistics
  • Total Accesses (updated on a weekly basis)
    PDF Downloads
Questions / Remarks / Feedback

Feedback for Dagstuhl Publishing

Thanks for your feedback!

Feedback submitted

Could not send message

Please try again later or send an E-mail