{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,2,27]],"date-time":"2026-02-27T03:48:03Z","timestamp":1772164083621,"version":"3.50.1"},"publisher-location":"New York, NY, USA","reference-count":40,"publisher":"ACM","license":[{"start":{"date-parts":[[2015,8,29]],"date-time":"2015-08-29T00:00:00Z","timestamp":1440806400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":[],"published-print":{"date-parts":[[2015,8,29]]},"DOI":"10.1145\/2784731.2784748","type":"proceedings-article","created":{"date-parts":[[2015,8,26]],"date-time":"2015-08-26T12:48:13Z","timestamp":1440593293000},"page":"424-436","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":8,"title":["GADTs meet their match: pattern-matching warnings that account for GADTs, guards, and laziness"],"prefix":"10.1145","author":[{"given":"Georgios","family":"Karachalias","sequence":"first","affiliation":[{"name":"Ghent University, Belgium"}]},{"given":"Tom","family":"Schrijvers","sequence":"additional","affiliation":[{"name":"KU Leuven, Belgium"}]},{"given":"Dimitrios","family":"Vytiniotis","sequence":"additional","affiliation":[{"name":"Microsoft Research, UK"}]},{"given":"Simon Peyton","family":"Jones","sequence":"additional","affiliation":[{"name":"Microsoft Research, UK"}]}],"member":"320","published-online":{"date-parts":[[2015,8,29]]},"reference":[{"key":"e_1_3_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.5555\/5280.5303"},{"key":"e_1_3_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.1145\/2500365.2500581"},{"key":"e_1_3_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1017\/S095679681300018X"},{"key":"e_1_3_2_1_4_1","volume-title":"First-class phantom types. Technical report","author":"Cheney J.","year":"2003","unstructured":"J. Cheney and R. Hinze . First-class phantom types. Technical report , Cornell University , 2003 . J. Cheney and R. Hinze. First-class phantom types. Technical report, Cornell University, 2003."},{"key":"e_1_3_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-38574-2_27"},{"key":"e_1_3_2_1_6_1","volume-title":"Proceedings of the Workshop on Types for Proofs and Programs","author":"Coquand T.","year":"1992","unstructured":"T. Coquand . Pattern matching with dependent types . In Proceedings of the Workshop on Types for Proofs and Programs , 1992 . T. Coquand. Pattern matching with dependent types. In Proceedings of the Workshop on Types for Proofs and Programs, 1992."},{"key":"e_1_3_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/1292597.1292602"},{"key":"e_1_3_2_1_9_1","unstructured":"ACM..  ACM.."},{"key":"e_1_3_2_1_10_1","volume-title":"Proceedings of the 2000 Haskell Symposium. ACM","author":"Erwig M.","year":"2000","unstructured":"M. Erwig and S. Peyton Jones . Pattern guards and transformational patterns . In Proceedings of the 2000 Haskell Symposium. ACM , 2000 . M. Erwig and S. Peyton Jones. Pattern guards and transformational patterns. In Proceedings of the 2000 Haskell Symposium. ACM, 2000."},{"key":"e_1_3_2_1_11_1","volume-title":"Workshop on ML","author":"Garrigue J.","year":"2011","unstructured":"J. Garrigue and J. L. Normand . Adding GADTs to OCaml: the direct approach . In Workshop on ML , 2011 . J. Garrigue and J. L. Normand. Adding GADTs to OCaml: the direct approach. In Workshop on ML, 2011."},{"key":"e_1_3_2_1_12_1","volume-title":"GADTs meet their match (extended version). Technical report, KU Leuven","author":"Karachalias G.","year":"2015","unstructured":"G. Karachalias , T. Schrijvers , D. Vytiniotis , and S. P. Jones . GADTs meet their match (extended version). Technical report, KU Leuven , 2015 . URL http:\/\/people.cs.kuleuven.be\/~george. karachalias\/papers\/gadtpm_ext.pdf. G. Karachalias, T. Schrijvers, D. Vytiniotis, and S. P. Jones. GADTs meet their match (extended version). Technical report, KU Leuven, 2015. URL http:\/\/people.cs.kuleuven.be\/~george. karachalias\/papers\/gadtpm_ext.pdf."},{"key":"e_1_3_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/1480881.1480927"},{"key":"e_1_3_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1016\/S0747-7171(08)80109-5"},{"key":"e_1_3_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/507635.507641"},{"key":"e_1_3_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/141471.141499"},{"key":"e_1_3_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1017\/S0956796807006223"},{"key":"e_1_3_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/1411304.1411311"},{"key":"e_1_3_2_1_19_1","volume-title":"Two techniques for compiling lazy pattern matching. Technical report","author":"Maranget L.","year":"1994","unstructured":"L. Maranget and P. Para . Two techniques for compiling lazy pattern matching. Technical report , 1994 . L. Maranget and P. Para. Two techniques for compiling lazy pattern matching. Technical report, 1994."},{"key":"e_1_3_2_1_20_1","volume-title":"LogiCal Project","year":"2004","unstructured":"The Coq development team. The Coq proof assistant reference manual . LogiCal Project , 2004 . URL http:\/\/coq.inria.fr. Version 8.0. The Coq development team. The Coq proof assistant reference manual. LogiCal Project, 2004. URL http:\/\/coq.inria.fr. Version 8.0."},{"key":"e_1_3_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1017\/S0956796803004829"},{"key":"e_1_3_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/1411286.1411293"},{"key":"e_1_3_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1145\/1159803.1159811"},{"key":"e_1_3_2_1_25_1","unstructured":"ACM..  ACM.."},{"key":"e_1_3_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1145\/1375581.1375602"},{"key":"e_1_3_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1145\/1596550.1596599"},{"key":"e_1_3_2_1_28_1","unstructured":"ACM..  ACM.."},{"key":"e_1_3_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.1137\/S0097539793246252"},{"key":"e_1_3_2_1_30_1","series-title":"Lecture Notes in Computer Science","first-page":"464","volume-title":"O","author":"Sestoft P.","unstructured":"P. Sestoft . ML pattern match compilation and partial evaluation. In O . Danvy, R. Gl\u00fcck, and P. Thiemann, editors, Partial Evaluation , volume 1110 of Lecture Notes in Computer Science , pages 446\u2013 464 . Springer Berlin Heidelberg, 1996.. P. Sestoft. ML pattern match compilation and partial evaluation. In O. Danvy, R. Gl\u00fcck, and P. Thiemann, editors, Partial Evaluation, volume 1110 of Lecture Notes in Computer Science, pages 446\u2013464. Springer Berlin Heidelberg, 1996.."},{"key":"e_1_3_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1145\/1028664.1028711"},{"key":"e_1_3_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-28756-5_28"},{"key":"e_1_3_2_1_33_1","first-page":"152","volume-title":"3rd International Workshop on Static Analysis, number 724","author":"Thiemann P.","year":"1993","unstructured":"P. Thiemann . Avoiding repeated tests in pattern matching. In G. Fil\u00e9, editor , 3rd International Workshop on Static Analysis, number 724 , pages 141\u2013 152 , Padova, Italia , Sept. 1993 . P. Thiemann. Avoiding repeated tests in pattern matching. In G. Fil\u00e9, editor, 3rd International Workshop on Static Analysis, number 724, pages 141\u2013152, Padova, Italia, Sept. 1993."},{"key":"e_1_3_2_1_34_1","doi-asserted-by":"publisher","DOI":"10.1145\/2628136.2628161"},{"key":"e_1_3_2_1_35_1","doi-asserted-by":"publisher","DOI":"10.1145\/41625.41653"},{"key":"e_1_3_2_1_36_1","volume-title":"Prentice Hall","author":"Wadler P.","year":"1987","unstructured":"P. Wadler . Efficient compilation of pattern matching. In S. Peyton Jones, editor, The implementation of functional programming languages, pages 78\u2013103 . Prentice Hall , 1987 . P. Wadler. Efficient compilation of pattern matching. In S. Peyton Jones, editor, The implementation of functional programming languages, pages 78\u2013103. Prentice Hall, 1987."},{"key":"e_1_3_2_1_37_1","doi-asserted-by":"publisher","DOI":"10.5555\/645769.667623"},{"key":"e_1_3_2_1_39_1","first-page":"851","article-title":"Dependently typed pattern matching","volume":"9","author":"Xi H.","year":"2003","unstructured":"H. Xi . Dependently typed pattern matching . Journal of Universal Computer Science , 9 : 851 \u2013 872 , 2003 . H. Xi. Dependently typed pattern matching. Journal of Universal Computer Science, 9:851\u2013872, 2003.","journal-title":"Journal of Universal Computer Science"},{"key":"e_1_3_2_1_40_1","doi-asserted-by":"publisher","DOI":"10.1145\/604131.604150"},{"key":"e_1_3_2_1_41_1","doi-asserted-by":"publisher","DOI":"10.1145\/1159842.1159849"},{"key":"e_1_3_2_1_42_1","doi-asserted-by":"publisher","DOI":"10.1145\/1480881.1480889"},{"key":"e_1_3_2_1_43_1","doi-asserted-by":"publisher","DOI":"10.1145\/2103786.2103795"}],"event":{"name":"ICFP'15: 20th ACM SIGPLAN International Conference on Functional Programming","location":"Vancouver BC Canada","acronym":"ICFP'15","sponsor":["SIGPLAN ACM Special Interest Group on Programming Languages"]},"container-title":["Proceedings of the 20th ACM SIGPLAN International Conference on Functional Programming"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2784731.2784748","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/2784731.2784748","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T02:16:48Z","timestamp":1750213008000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2784731.2784748"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2015,8,29]]},"references-count":40,"alternative-id":["10.1145\/2784731.2784748","10.1145\/2784731"],"URL":"https:\/\/doi.org\/10.1145\/2784731.2784748","relation":{"is-identical-to":[{"id-type":"doi","id":"10.1145\/2858949.2784748","asserted-by":"object"}]},"subject":[],"published":{"date-parts":[[2015,8,29]]},"assertion":[{"value":"2015-08-29","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}