{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,2,24]],"date-time":"2025-02-24T05:22:16Z","timestamp":1740374536403,"version":"3.37.3"},"publisher-location":"Berlin, Heidelberg","reference-count":21,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"type":"print","value":"9783540221593"},{"type":"electronic","value":"9783540248514"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2004]]},"DOI":"10.1007\/978-3-540-24851-4_18","type":"book-chapter","created":{"date-parts":[[2010,8,8]],"date-time":"2010-08-08T20:36:03Z","timestamp":1281299763000},"page":"390-414","source":"Crossref","is-referenced-by-count":19,"title":["LOOJ: Weaving LOOM into Java"],"prefix":"10.1007","author":[{"given":"Kim B.","family":"Bruce","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"J. Nathan","family":"Foster","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","reference":[{"key":"18_CR1","doi-asserted-by":"crossref","unstructured":"Allen, E., Bannet, J., Cartwright, R.: A first-class approach to genericity. In: Proc. OOPSLA 2003, pp. 96\u2013114 (2003)","DOI":"10.1145\/949305.949316"},{"key":"18_CR2","doi-asserted-by":"crossref","unstructured":"Agesen, O., Freund, S.N., Mitchell, J.C.: Adding type parameterization to the java language. In: Proc. OOPSLA 1997, pp. 49\u201365 (1997)","DOI":"10.1145\/263698.263720"},{"key":"18_CR3","unstructured":"Bracha, G., Cohen, N., Kemper, C., Marx, S., Odersky, M., Panitz, S.-E., Stoutamire, D., Thorup, K., Wadler, P.: Adding generics to the Java programming language (2001), http:\/\/jcp.org\/aboutJava\/communityprocess\/review\/jsr014\/index.html"},{"key":"18_CR4","unstructured":"Bruce, K.B., Foster, J.N.: LOOJ: Weaving LOOM into Java. Technical Report MS-CIS-03-38, University of Pennsylvania (2004), http:\/\/www.cis.upenn.edu\/~jnfoster\/papers\/MS-CIS-03-38.ps"},{"key":"18_CR5","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"104","DOI":"10.1007\/BFb0053376","volume-title":"ECOOP \u201997 - Object-Oriented Programming","author":"K.B. Bruce","year":"1997","unstructured":"Bruce, K.B., Fiech, A., Petersen, L.: Subtyping is not a good \u201cmatch\u201d for object-oriented languages. In: Aksit, M., Matsuoka, S. (eds.) ECOOP 1997. LNCS, vol.\u00a01241, pp. 104\u2013127. Springer, Heidelberg (1997)"},{"issue":"2","key":"18_CR6","doi-asserted-by":"publisher","first-page":"225","DOI":"10.1145\/641888.641891","volume":"25","author":"K.B. Bruce","year":"2003","unstructured":"Bruce, K.B., Fiech, A., Schuett, A., van Gent, R.: PolyTOIL: A type-safe polymorphic object-oriented language. ACM TOPLAS\u00a025(2), 225\u2013290 (2003)","journal-title":"ACM TOPLAS"},{"key":"18_CR7","doi-asserted-by":"crossref","unstructured":"Bracha, G., Odersky, M., Stoutamire, D., Wadler, P.: Making the future safe for the past: Adding genericity to the Java programming language. In: Proc. OOPSLA (1998)","DOI":"10.1145\/286936.286957"},{"key":"18_CR8","volume-title":"Foundations of Object-Oriented Languages: Types and Semantics","author":"K.B. Bruce","year":"2002","unstructured":"Bruce, K.B.: Foundations of Object-Oriented Languages: Types and Semantics. MIT Press, Cambridge (2002)"},{"key":"18_CR9","doi-asserted-by":"crossref","unstructured":"Bruce, K.B.: Some challenging typing issues in object-oriented languages. Electronic notes in Theoretical Computer Science\u00a082(8) (2003)","DOI":"10.1016\/S1571-0661(04)80799-0"},{"key":"18_CR10","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"crossref","first-page":"27","DOI":"10.1007\/3-540-49538-X_3","volume-title":"ECOOP \u201995 - Object-Oriented Programming","author":"K.B. Bruce","year":"1995","unstructured":"Bruce, K.B., Schuett, A., van Gent, R.: PolyTOIL: A typesafe polymorphic object-oriented language. In: Olthoff, W. (ed.) ECOOP 1995. LNCS, vol.\u00a0952, pp. 27\u201351. Springer, Heidelberg (1995) (extended abstract)"},{"key":"18_CR11","unstructured":"Burstein, J.: Rupiah: An extension to Java supporting match-bounded parametric polymorphism, ThisType, and exact typing. Williams College Senior Honors Thesis (1998)"},{"key":"18_CR12","doi-asserted-by":"crossref","unstructured":"Bruce, K.B., Vanderwaart, J.C.: Semantics-driven language design: Statically type-safe virtual types in object-oriented languages. Electronic notes in Theoretical Computer Science\u00a020 (1999)","DOI":"10.1016\/S1571-0661(04)80066-5"},{"key":"18_CR13","doi-asserted-by":"crossref","unstructured":"Cartwright, R., Steele, G.L.: Compatible genericity with run-time types for the Java programming language (1998)","DOI":"10.1145\/286936.286958"},{"key":"18_CR14","unstructured":"Foster, J.N.: Rupiah: Towards an Expressive Static Type System for Java. Williams College Senior Honors Thesis (2001)"},{"key":"18_CR15","volume-title":"Design Patterns: Elements of Reusable Object-Oriented Software","author":"E. Gamma","year":"1996","unstructured":"Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, Reading (1996)"},{"key":"18_CR16","unstructured":"Gonzalez, R.: In the World of Type Checking, Smarter Is Faster. Williams College Senior Honors Thesis (2003)"},{"issue":"3","key":"18_CR17","doi-asserted-by":"publisher","first-page":"396","DOI":"10.1145\/503502.503505","volume":"23","author":"A. Igarashi","year":"2001","unstructured":"Igarashi, A., Pierce, B., Wadler, P.: Featherweight Java: A minimal core calculus for Java and GJ. ACM TOPLAS\u00a023(3), 396\u2013450 (2001); An earlier version appeared in Proc. OOPSLA 1999","journal-title":"ACM TOPLAS"},{"key":"18_CR18","doi-asserted-by":"crossref","unstructured":"Myers, A.C., Bank, J.A., Liskov, B.: Parameterized types for Java. In: Proc. POPL 1997, pp. 132\u2013145 (1997)","DOI":"10.1145\/263699.263714"},{"key":"18_CR19","doi-asserted-by":"crossref","unstructured":"Odersky, M., Wadler, P.: Pizza into Java: Translating theory into practice. In: Proc. POPL 1997, pp. 146\u2013159 (1997)","DOI":"10.1145\/263699.263715"},{"key":"18_CR20","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"123","DOI":"10.1007\/978-3-540-24851-4_6","volume-title":"ECOOP 2004 \u2013 Object-Oriented Programming","author":"M. Torgersen","year":"2004","unstructured":"Torgersen, M.: The expression problem revisited. In: Odersky, M. (ed.) ECOOP 2004. LNCS, vol.\u00a03086, pp. 123\u2013146. Springer, Heidelberg (2004) (to appear)"},{"key":"18_CR21","doi-asserted-by":"crossref","unstructured":"Viroli, M., Natali, A.: Parametric polymorphism in Java: an approach to translation based on reflective features. In: Proc. OOPSLA 2000, pp. 146\u2013165 (2000)","DOI":"10.1145\/353171.353182"}],"container-title":["Lecture Notes in Computer Science","ECOOP 2004 \u2013 Object-Oriented Programming"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-540-24851-4_18.pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,2,23]],"date-time":"2025-02-23T23:17:33Z","timestamp":1740352653000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-540-24851-4_18"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2004]]},"ISBN":["9783540221593","9783540248514"],"references-count":21,"URL":"https:\/\/doi.org\/10.1007\/978-3-540-24851-4_18","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2004]]}}}