Write a Blog >>
Fri 28 Sep 2018 14:17 - 14:40 at Frisco - Session 2: Scala Extensions & Parsing Chair(s): Philipp Haller

Pattern matching enables inspecting algebraic data types, but typically prevents hiding the implementation of the matched algebraic data type. In Scala, instead, extractors also allow pattern matching on non-algebraic data types and invoking methods on the obtained objects, while partially decoupling API consumers from the API implementation.

But as we show in this paper, pattern matching using extractors is restricted compared to matching against case classes. We argue this violates the appropriate variant of the uniform access principle. To address this problem, we propose a small language extension, which enables defining truly abstract interfaces and freely evolve their implementation.

Fri 28 Sep

scala-2018-papers
13:10 - 14:40: Scala 2018 - Session 2: Scala Extensions & Parsing at Frisco
Chair(s): Philipp HallerKTH, Sweden
scala-2018-papers13:10 - 13:32
Talk
Jamie WillisUniversity of Bristol, UK, Nicolas WuUniversity of Bristol, UK
DOI
scala-2018-papers13:32 - 13:55
Talk
Denys ShabalinEPFL, Switzerland, Martin OderskyEPFL, Switzerland
DOI
scala-2018-papers13:55 - 14:17
Talk
Ekaterina VerbitskaiaSaint Petersburg State University, Russia, Ilya KirillovSaint Petersburg State University, Russia, Ilya NozkinSaint Petersburg State University, Russia, Semyon GrigorevSaint Petersburg State University, Russia
DOI
scala-2018-papers14:17 - 14:40
Talk
Nicolas StuckiEPFL, Switzerland, Paolo G. GiarrussoEPFL, Switzerland, Martin OderskyEPFL, Switzerland
DOI