@inproceedings{7f958c14af9a4103a9cf611024f3bd36,
title = "Towards improved GADT reasoning in Scala",
abstract = "Generalized algebraic data types (GADT) have been notoriously difficult to implement correctly in Scala. Both major Scala compilers, Scalac and Dotty, are currently known to have type soundness holes related to them. In particular, covariant GADTs have exposed paradoxes due to Scala's inheritance model. We informally explore foundations for GADTs within Scala's core type system, to guide a principled understanding and implementation of GADTs in Scala.",
keywords = "DOT, Generalized algebraic data types, Scala",
author = "Lionel Parreaux and Aleksander Boruch-Gruszecki and Giarrusso, {Paolo G.}",
year = "2019",
month = jul,
day = "17",
doi = "10.1145/3337932.3338813",
language = "English",
series = "Scala 2019 - Proceedings of the 10th ACM SIGPLAN International Symposium on Scala, Part of ECOOP 2019",
publisher = "Association for Computing Machinery (ACM)",
pages = "12--16",
booktitle = "Scala 2019 - Proceedings of the 10th ACM SIGPLAN International Symposium on Scala, Part of ECOOP 2019",
address = "United States",
note = "10th ACM SIGPLAN International Symposium on Scala, Scala 2019, co-located with the European Conference on Object-Oriented Programming, ECOOP 2019 ; Conference date: 17-07-2019",
}