{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,2,27]],"date-time":"2026-02-27T03:46:44Z","timestamp":1772164004981,"version":"3.50.1"},"publisher-location":"New York, NY, USA","reference-count":41,"publisher":"ACM","license":[{"start":{"date-parts":[[2009,10,25]],"date-time":"2009-10-25T00:00:00Z","timestamp":1256428800000},"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":[[2009,10,25]]},"DOI":"10.1145\/1640089.1640109","type":"proceedings-article","created":{"date-parts":[[2009,10,27]],"date-time":"2009-10-27T09:27:28Z","timestamp":1256635648000},"page":"263-282","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":3,"title":["Self type constructors"],"prefix":"10.1145","author":[{"given":"Chieri","family":"Saito","sequence":"first","affiliation":[{"name":"Kyoto University, Kyoto, Japan"}]},{"given":"Atsushi","family":"Igarashi","sequence":"additional","affiliation":[{"name":"Kyoto University, Kyoto, Japan"}]}],"member":"320","published-online":{"date-parts":[[2009,10,25]]},"reference":[{"key":"e_1_3_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.5381\/jot.2008.7.5.a2"},{"key":"e_1_3_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.1007\/11531142_13"},{"key":"e_1_3_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1145\/286936.286957"},{"key":"e_1_3_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1017\/S0956796800001039"},{"key":"e_1_3_2_1_5_1","series-title":"ENTCS","volume-title":"Proc. of WOOD'03","author":"Bruce Kim B.","year":"2003","unstructured":"Kim B. Bruce . Some challenging typing issues in object-oriented languages . In Proc. of WOOD'03 , volume 82 of ENTCS , 2003 . Kim B. Bruce. Some challenging typing issues in object-oriented languages. In Proc. of WOOD'03, volume 82 of ENTCS, 2003."},{"key":"e_1_3_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.5555\/230849.230854"},{"key":"e_1_3_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-540-24851-4_18"},{"key":"e_1_3_2_1_8_1","series-title":"LNCS","first-page":"523","volume-title":"Proc. of ECOOP '98","author":"Bruce Kim B.","year":"1998","unstructured":"Kim B. Bruce , Martin Odersky , and Philip Wadler . A statically safe alternative to virtual types . In Proc. of ECOOP '98 , volume 1445 of LNCS , pages 523 -- 549 , 1998 . Kim B. Bruce, Martin Odersky, and Philip Wadler. A statically safe alternative to virtual types. In Proc. of ECOOP '98, volume 1445 of LNCS, pages 523--549, 1998."},{"key":"e_1_3_2_1_9_1","series-title":"ENTCS","volume-title":"Proc. of MFPS XV","author":"Bruce Kim B.","year":"1999","unstructured":"Kim B. Bruce and Joseph C. Vanderwaart . Semantics-driven language design: Statically type-safe virtual types in object-oriented languages . In Proc. of MFPS XV , volume 20 of ENTCS , 1999 . Kim B. Bruce and Joseph C. Vanderwaart. Semantics-driven language design: Statically type-safe virtual types in object-oriented languages. In Proc. of MFPS XV, volume 20 of ENTCS, 1999."},{"key":"e_1_3_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1145\/1557898.1557902"},{"key":"e_1_3_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1145\/99370.99392"},{"key":"e_1_3_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1145\/1218563.1218578"},{"key":"e_1_3_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-03013-0_13"},{"key":"e_1_3_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1007\/11785477_18"},{"key":"e_1_3_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.5555\/646158.680013"},{"key":"e_1_3_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-540-45070-2_14"},{"key":"e_1_3_2_1_17_1","volume-title":"Design Patterns: Elements of Reusable Object-Oriented Sotfware","author":"Gamma Erich","year":"1995","unstructured":"Erich Gamma , Richard Helm , Ralph Johnson , and John Vlissides . Design Patterns: Elements of Reusable Object-Oriented Sotfware . Addison-Wesley , 1995 . Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides. Design Patterns: Elements of Reusable Object-Oriented Sotfware. Addison-Wesley, 1995."},{"key":"e_1_3_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/1449913.1449935"},{"key":"e_1_3_2_1_19_1","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"crossref","first-page":"161","DOI":"10.1007\/3-540-48743-3_8","volume-title":"Proceedings of the 13th European Conference on Object-Oriented Programming (ECOOP'99)","author":"Igarashi Atsushi","year":"1999","unstructured":"Atsushi Igarashi and Benjamin C. Pierce . Foundations for virtual types . In Rachid Guerraoui, editor, Proceedings of the 13th European Conference on Object-Oriented Programming (ECOOP'99) , volume 1628 of Lecture Notes in Computer Science , pages 161 -- 185 , Lisbon, Portugal, June 1999 . Springer-Verlag . Atsushi Igarashi and Benjamin C. Pierce. Foundations for virtual types. In Rachid Guerraoui, editor, Proceedings of the 13th European Conference on Object-Oriented Programming (ECOOP'99), volume 1628 of Lecture Notes in Computer Science, pages 161--185, Lisbon, Portugal, June 1999. Springer-Verlag."},{"key":"e_1_3_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1145\/503502.503505"},{"key":"e_1_3_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1145\/1152649.1152650"},{"key":"e_1_3_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/1297027.1297037"},{"key":"e_1_3_2_1_23_1","volume-title":"Proc. of FTfJP 2004","author":"Jolly Paul","year":"2004","unstructured":"Paul Jolly , Sophia Drossopoulou , Christopher Anderson , and Klaus Ostermann . Simple dependent types: Concord . In Proc. of FTfJP 2004 , June 2004 . Paul Jolly, Sophia Drossopoulou, Christopher Anderson, and Klaus Ostermann. Simple dependent types: Concord. In Proc. of FTfJP 2004, June 2004."},{"key":"e_1_3_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1145\/1289971.1289996"},{"key":"e_1_3_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1145\/1297027.1297078"},{"key":"e_1_3_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1145\/28697.28738"},{"key":"e_1_3_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1145\/1449764.1449798"},{"key":"e_1_3_2_1_29_1","volume-title":"Proc. of International Workshop on Foundations of Object-Oriented Languages (FOOL'08)","author":"Moors Adriaan","year":"2008","unstructured":"Adriaan Moors , Frank Piessens , and Martin Odersky . Safe type-level abstraction in scala . In Proc. of International Workshop on Foundations of Object-Oriented Languages (FOOL'08) , January 2008 . Adriaan Moors, Frank Piessens, and Martin Odersky. Safe type-level abstraction in scala. In Proc. of International Workshop on Foundations of Object-Oriented Languages (FOOL'08), January 2008."},{"key":"e_1_3_2_1_30_1","doi-asserted-by":"publisher","DOI":"10.1145\/1028976.1028986"},{"key":"e_1_3_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1145\/1167473.1167476"},{"key":"e_1_3_2_1_32_1","unstructured":"Martin Odersky. The Scala language specification version 2.6. EPFL. http:\/\/www.scala-lang.org\/docu\/files\/ScalaReference.pdf November 2007.  Martin Odersky. The Scala language specification version 2.6. EPFL. http:\/\/www.scala-lang.org\/docu\/files\/ScalaReference.pdf November 2007."},{"key":"e_1_3_2_1_33_1","series-title":"LNCS","first-page":"201","volume-title":"Proc. of ECOOP '03","author":"Odersky Martin","year":"2003","unstructured":"Martin Odersky , Vincent Cremet , Christine Rockl , and Matthias Zenger . A nominal theory of objects with dependent types . In Luca Cardelli, editor, Proc. of ECOOP '03 , volume 2743 of LNCS , pages 201 -- 224 , Darmstadt , Germany, July 2003 . Martin Odersky, Vincent Cremet, Christine Rockl, and Matthias Zenger. A nominal theory of objects with dependent types. In Luca Cardelli, editor, Proc. of ECOOP '03, volume 2743 of LNCS, pages 201--224, Darmstadt, Germany, July 2003."},{"key":"e_1_3_2_1_34_1","doi-asserted-by":"publisher","DOI":"10.1145\/1094811.1094815"},{"key":"e_1_3_2_1_35_1","doi-asserted-by":"publisher","DOI":"10.5381\/jot.2008.7.5.a3"},{"key":"e_1_3_2_1_36_1","doi-asserted-by":"publisher","DOI":"10.1145\/1529282.1529699"},{"key":"e_1_3_2_1_37_1","doi-asserted-by":"publisher","DOI":"10.1017\/S0956796807006405"},{"key":"e_1_3_2_1_39_1","series-title":"LNCS","first-page":"186","volume-title":"Proc. of 13th ECOOP (ECOOP'99)","author":"Thorup Kresten Krab","year":"1999","unstructured":"Kresten Krab Thorup and Mads Torgersen . Unifying genericity: Combining the benefits of virtual types and parameterized classes . In Proc. of 13th ECOOP (ECOOP'99) , volume 1628 of LNCS , pages 186 -- 204 , Lisbon , Portugal, June 1999 . Kresten Krab Thorup and Mads Torgersen. Unifying genericity: Combining the benefits of virtual types and parameterized classes. In Proc. of 13th ECOOP (ECOOP'99), volume 1628 of LNCS, pages 186--204, Lisbon, Portugal, June 1999."},{"key":"e_1_3_2_1_40_1","first-page":"123","volume-title":"Proc. of ECOOP2004","volume":"3086","author":"Torgersen Mads","year":"2004","unstructured":"Mads Torgersen . The expression problem revisited: Four new solutions using generics . In Proc. of ECOOP2004 , volume 3086 of LNCS, pages 123 -- 146 , Oslo, Norway , June 2004 . Mads Torgersen. The expression problem revisited: Four new solutions using generics. In Proc. of ECOOP2004, volume 3086 of LNCS, pages 123--146, Oslo, Norway, June 2004."},{"key":"e_1_3_2_1_41_1","doi-asserted-by":"publisher","DOI":"10.1145\/967900.968162"},{"key":"e_1_3_2_1_42_1","volume-title":"The expression problem","author":"Wadler Philip","year":"1998","unstructured":"Philip Wadler . The expression problem ., 1998 . Discussion on the Java-Genericity mailing list. Also available at http:\/\/homepages.inf.ed.ac.uk\/wadler\/papers\/expression\/expression.txt. Philip Wadler. The expression problem., 1998. Discussion on the Java-Genericity mailing list. Also available at http:\/\/homepages.inf.ed.ac.uk\/wadler\/papers\/expression\/expression.txt."},{"key":"e_1_3_2_1_43_1","doi-asserted-by":"publisher","DOI":"10.1006\/inco.1994.1093"}],"event":{"name":"OOPSLA09: ACM SIGPLAN Object Oriented Programming Systems and Applications Conference","location":"Orlando Florida USA","acronym":"OOPSLA09","sponsor":["SIGPLAN ACM Special Interest Group on Programming Languages"]},"container-title":["Proceedings of the 24th ACM SIGPLAN conference on Object oriented programming systems languages and applications"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1640089.1640109","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/1640089.1640109","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T08:17:55Z","timestamp":1750234675000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1640089.1640109"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2009,10,25]]},"references-count":41,"alternative-id":["10.1145\/1640089.1640109","10.1145\/1640089"],"URL":"https:\/\/doi.org\/10.1145\/1640089.1640109","relation":{"is-identical-to":[{"id-type":"doi","id":"10.1145\/1639949.1640109","asserted-by":"object"}]},"subject":[],"published":{"date-parts":[[2009,10,25]]},"assertion":[{"value":"2009-10-25","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}