000225497 001__ 225497
000225497 005__ 20180913064158.0
000225497 020__ $$a978-1-4503-4648-1
000225497 0247_ $$2doi$$a10.1145/2998392.2998401
000225497 037__ $$aCONF
000225497 245__ $$aA generic algorithm for checking exhaustivity of pattern matching
000225497 269__ $$a2016
000225497 260__ $$c2016
000225497 336__ $$aConference Papers
000225497 520__ $$aAlgebraic data types and pattern matching are key features of functional programming languages. Exhaustivity checking of pattern matching is a safety belt that defends against unmatched exceptions at runtime and boosts type safety. However, the presence of language features like inheritance, typecase, traits, GADTs, path-dependent types and union types makes the checking difficult and the algorithm complex.  In this paper we propose a generic algorithm that decouples the checking algorithm from specific type theories. The decoupling makes the algorithm simple and enables easy customization for specific type systems.
000225497 6531_ $$apattern matching
000225497 6531_ $$aexhaustivity check
000225497 6531_ $$aScala
000225497 700__ $$0249854$$aLiu, Fengyun$$g244269
000225497 7112_ $$aSCALA 2016$$cAmsterdam, Netherlands$$dOctober 30 - 31, 2016
000225497 773__ $$tSCALA 2016 Proceedings of the 2016 7th ACM SIGPLAN Symposium on Scala
000225497 8564_ $$s290716$$uhttps://infoscience.epfl.ch/record/225497/files/p61-liu.pdf$$yn/a$$zn/a
000225497 909C0 $$0252187$$pLAMP$$xU10409
000225497 909CO $$ooai:infoscience.tind.io:225497$$pconf$$pIC
000225497 917Z8 $$x244269
000225497 937__ $$aEPFL-CONF-225497
000225497 973__ $$aEPFL$$rREVIEWED$$sPUBLISHED
000225497 980__ $$aCONF