{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,2,27]],"date-time":"2026-02-27T03:48:23Z","timestamp":1772164103742,"version":"3.50.1"},"publisher-location":"New York, NY, USA","reference-count":38,"publisher":"ACM","license":[{"start":{"date-parts":[[2018,11,5]],"date-time":"2018-11-05T00:00:00Z","timestamp":1541376000000},"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":[[2018,11,5]]},"DOI":"10.1145\/3278122.3278124","type":"proceedings-article","created":{"date-parts":[[2018,10,24]],"date-time":"2018-10-24T11:28:39Z","timestamp":1540380519000},"page":"134-146","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":0,"title":["Pattern matching in an open world"],"prefix":"10.1145","author":[{"given":"Weixin","family":"Zhang","sequence":"first","affiliation":[{"name":"University of Hong Kong, China"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Bruno C. d. S.","family":"Oliveira","sequence":"additional","affiliation":[{"name":"University of Hong Kong, China"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2018,11,5]]},"reference":[{"key":"e_1_3_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1145\/2036918.2036930"},{"key":"e_1_3_2_1_2_1","unstructured":"Eugene Burmako. 2017. Unification of Compile-Time and Runtime Metaprogramming in Scala. Ph.D. Dissertation. EPFL.  Eugene Burmako. 2017. Unification of Compile-Time and Runtime Metaprogramming in Scala. Ph.D. Dissertation. EPFL."},{"key":"e_1_3_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1017\/S0956796809007205"},{"key":"e_1_3_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.5555\/646150.679216"},{"key":"e_1_3_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1145\/354222.353181"},{"key":"e_1_3_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.5555\/2394758.2394779"},{"key":"e_1_3_2_1_7_1","unstructured":"Erich Gamma Richard Helm Ralph Johnson and John Vlissides. 1994. Design Patterns : Elements of Reusable Object-Oriented Software. Addisson-Wesley.   Erich Gamma Richard Helm Ralph Johnson and John Vlissides. 1994. Design Patterns : Elements of Reusable Object-Oriented Software. Addisson-Wesley."},{"key":"e_1_3_2_1_8_1","volume-title":"ML Workshop.","author":"Garrigue Jacques","year":"1998"},{"key":"e_1_3_2_1_9_1","volume-title":"Workshop on Foundations of Software Engineering.","author":"Garrigue Jacques","year":"2000"},{"key":"e_1_3_2_1_10_1","unstructured":"Felix Geller Robert Hirschfeld and Gilad Bracha. 2010. Pattern Matching for an object-oriented and dynamically typed programming language. Number 36. Universit\u00e4tsverlag Potsdam.  Felix Geller Robert Hirschfeld and Gilad Bracha. 2010. Pattern Matching for an object-oriented and dynamically typed programming language. Number 36. Universit\u00e4tsverlag Potsdam."},{"key":"e_1_3_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.5555\/1785754.1785765"},{"key":"e_1_3_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1145\/1868294.1868307"},{"key":"e_1_3_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/1449913.1449935"},{"key":"e_1_3_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1145\/2384577.2384581"},{"key":"e_1_3_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/2814204.2814209"},{"key":"e_1_3_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/2491956.2462194"},{"key":"e_1_3_2_1_17_1","unstructured":"Simon Peyton Jones. 2003. Haskell 98 language and libraries: the revised report. Cambridge University Press.  Simon Peyton Jones. 2003. Haskell 98 language and libraries: the revised report. Cambridge University Press."},{"key":"e_1_3_2_1_18_1","doi-asserted-by":"crossref","unstructured":"Jed Liu and Andrew C Myers. 2003. JMatch: Iterable abstract pattern matching for Java. In PADL.   Jed Liu and Andrew C Myers. 2003. JMatch: Iterable abstract pattern matching for Java. In PADL.","DOI":"10.1007\/3-540-36388-2_9"},{"key":"e_1_3_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1145\/1140335.1140352"},{"key":"e_1_3_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1145\/1018203.1018207"},{"key":"e_1_3_2_1_21_1","doi-asserted-by":"crossref","unstructured":"Robin Milner Mads Tofte Robert Harper and David Macqueen. 1997. The Definition of Standard ML-Revised. (1997).   Robin Milner Mads Tofte Robert Harper and David Macqueen. 1997. The Definition of Standard ML-Revised. (1997).","DOI":"10.7551\/mitpress\/2319.001.0001"},{"key":"e_1_3_2_1_23_1","volume-title":"The 12th International Workshop on Foundations of Object-Oriented Languages.","author":"Odersky Martin","year":"2005"},{"key":"e_1_3_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-03013-0_13"},{"key":"e_1_3_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-31057-7_2"},{"key":"e_1_3_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1145\/2804302.2804315"},{"key":"e_1_3_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-39038-8_2"},{"key":"e_1_3_2_1_28_1","unstructured":"Benjamin C Pierce. 2002. Types and programming languages. MIT press.   Benjamin C Pierce. 2002. Types and programming languages. MIT press."},{"key":"e_1_3_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.1145\/2660193.2660237"},{"key":"e_1_3_2_1_30_1","doi-asserted-by":"publisher","DOI":"10.1145\/1868294.1868314"},{"key":"e_1_3_2_1_31_1","volume-title":"ACM SIGPLAN Foundations of Object-Oriented Languages Workshop.","author":"Ryu Sukyoung","year":"2010"},{"key":"e_1_3_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1145\/581690.581691"},{"key":"e_1_3_2_1_33_1","doi-asserted-by":"publisher","DOI":"10.1145\/2517208.2517222"},{"key":"e_1_3_2_1_34_1","doi-asserted-by":"publisher","DOI":"10.1017\/S0956796808006758"},{"key":"e_1_3_2_1_35_1","unstructured":"Philip Wadler. 1998. The Expression Problem. Email. (Nov. 1998). Discussion on the Java Genericity mailing list.  Philip Wadler. 1998. The Expression Problem. Email. (Nov. 1998). Discussion on the Java Genericity mailing list."},{"key":"e_1_3_2_1_36_1","doi-asserted-by":"publisher","DOI":"10.1145\/604131.604150"},{"key":"e_1_3_2_1_37_1","doi-asserted-by":"publisher","DOI":"10.1145\/507635.507665"},{"key":"e_1_3_2_1_38_1","unstructured":"Weixin Zhang. 2017. Extensible domain-specific languages in objectoriented programming. HKU Theses Online (HKUTO) (2017).  Weixin Zhang. 2017. Extensible domain-specific languages in objectoriented programming. HKU Theses Online (HKUTO) (2017)."},{"key":"e_1_3_2_1_39_1","volume-title":"EVF: An Extensible and Expressive Visitor Framework for Programming Language Reuse. In European Conference on Object-Oriented Programming.","author":"Zhang Weixin"}],"event":{"name":"GPCE '18: 17th ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences","location":"Boston MA USA","acronym":"GPCE '18","sponsor":["SIGPLAN ACM Special Interest Group on Programming Languages"]},"container-title":["Proceedings of the 17th ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3278122.3278124","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3278122.3278124","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,17]],"date-time":"2025-06-17T19:54:09Z","timestamp":1750190049000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3278122.3278124"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2018,11,5]]},"references-count":38,"alternative-id":["10.1145\/3278122.3278124","10.1145\/3278122"],"URL":"https:\/\/doi.org\/10.1145\/3278122.3278124","relation":{"is-identical-to":[{"id-type":"doi","id":"10.1145\/3393934.3278124","asserted-by":"object"}]},"subject":[],"published":{"date-parts":[[2018,11,5]]},"assertion":[{"value":"2018-11-05","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}