{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,11,18]],"date-time":"2025-11-18T12:08:59Z","timestamp":1763467739703},"publisher-location":"Berlin\/Heidelberg","reference-count":27,"publisher":"Springer-Verlag","isbn-type":[{"type":"print","value":"3540556680"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"DOI":"10.1007\/bfb0053045","type":"book-chapter","created":{"date-parts":[[2006,6,7]],"date-time":"2006-06-07T03:48:54Z","timestamp":1149652134000},"page":"329-349","source":"Crossref","is-referenced-by-count":19,"title":["Making type inference practical"],"prefix":"10.1007","author":[{"given":"Nicholas","family":"Oxh\u00f8j","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Jens","family":"Palsberg","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Michael I.","family":"Schwartzbach","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","reference":[{"key":"19_CR1","doi-asserted-by":"crossref","unstructured":"Alan H. Borning and Daniel H. H. Ingalls. A type declaration and inference system for Smalltalk. In Ninth Symposium on Principles of Programming Languages, pages 133\u2013141. ACM Press, January 1982.","DOI":"10.1145\/582153.582168"},{"key":"19_CR2","doi-asserted-by":"crossref","unstructured":"Luca Cardelli. A semantics of multiple inheritance. In Gilles Kahn, David Mac-Queen, and Gordon Plotkin, editors, Semantics of Data Types, pages 51\u201368. Springer-Verlag (LNCS 173), 1984.","DOI":"10.1007\/3-540-13346-1_2"},{"issue":"4","key":"19_CR3","doi-asserted-by":"publisher","first-page":"471","DOI":"10.1145\/6041.6042","volume":"17","author":"L. Cardelli","year":"1985","unstructured":"Luca Cardelli and Peter Wegner. On understanding types, data abstraction, and polymorphism. ACM Computing Surveys, 17(4):471\u2013522, December 1985.","journal-title":"ACM Computing Surveys"},{"key":"19_CR4","doi-asserted-by":"crossref","unstructured":"William Cook and Jens Palsberg. A denotational semantics of inheritance and its correctness. In Proc. OOPSLA'89, ACM SIGPLAN Fourth Annual Conference on Object-Oriented Programming Systems, Languages and Applications, 1989. To appear in Information and Computation.","DOI":"10.1145\/74877.74922"},{"key":"19_CR5","unstructured":"William R. Cook. A Denotational Semantics of Inheritance. PhD thesis, Brown University, 1989."},{"key":"19_CR6","volume-title":"Technical report","author":"O. Dahl","year":"1968","unstructured":"Ole-Johan Dahl, Bj\u00d8rn Myhrhaug, and Kristen Nygaard. Simula 67 common base language. Technical report, Norwegian Computing Center, Oslo, Norway, 1968."},{"key":"19_CR7","doi-asserted-by":"crossref","unstructured":"Scott Danforth and Chris Tomlinson. Type theories and object-oriented programming. ACM Computing Surveys, 20(1), March 1988.","DOI":"10.1145\/62058.62060"},{"key":"19_CR8","unstructured":"Adele Goldberg and David Robson. Smalltalk-80\u2014The Language and its Implementation. Addison-Wesley, 1983."},{"key":"19_CR9","doi-asserted-by":"crossref","unstructured":"Justin O. Graver and Ralph E. Johnson. A type system for Smalltalk. In Seventeenth Symposium on Principles of Programming Languages, pages 136\u2013150. ACM Press, January 1990.","DOI":"10.1145\/96709.96722"},{"key":"19_CR10","series-title":"UIUCD-R-89-1539","volume-title":"PhD thesis","author":"J. O. Graver","year":"1989","unstructured":"Justin Owen Graver. Type-Checking and Type-Inference for Object-Oriented Programming Languages. PhD thesis, Department of Computer Science, University of Illinois at Urbana-Champaign, August 1989. UIUCD-R-89-1539."},{"key":"19_CR11","unstructured":"Andreas V. Hense. Polymorphic type inference for a simple object oriented programming language with state. Technical Report No. A 20\/90, Fachbericht 14, Universit\u00c4t des Saarlandes, December 1990."},{"key":"19_CR12","doi-asserted-by":"crossref","unstructured":"Andreas V. Hense. Wrapper semantics of an object-oriented programming language with state. In T. Ito and A. R. Meyer, editors, Proc. Theoretical Aspects of Computer Software, pages 548\u2013568. Springer-Verlag (LNCS 526), 1991.","DOI":"10.1007\/3-540-54415-1_64"},{"key":"19_CR13","doi-asserted-by":"crossref","unstructured":"Urs H\u00f6lzle, Craig Chambers, and David Ungar. Optimizing dynamically-typed object-oriented languages with polymorphic inline caches. In Proc. ECOOP'91, Fifth European Conference on Object-Oriented Programming, 1991.","DOI":"10.1007\/BFb0057013"},{"key":"19_CR14","doi-asserted-by":"crossref","unstructured":"Samuel Kamin. Inheritance in Smalltalk-80: A denotational definition. In Fifteenth Symposium on Principles of Programming Languages, pages 80\u201387. ACM Press, January 1988.","DOI":"10.1145\/73560.73567"},{"key":"19_CR15","doi-asserted-by":"crossref","unstructured":"Bent B. Kristensen, Ole Lehrmann Madsen, Birger M\u00d8ller-Pedersen, and Kristen Nygaard. The BETA programming language. In Bruce Shriver and Peter Wegner, editors, Research Directions in Object-Oriented Programming, pages 7\u201348. MIT Press, 1987.","DOI":"10.7146\/dpb.v16i229.7578"},{"key":"19_CR16","volume-title":"Object-Oriented Software Construction","author":"B. Meyer","year":"1988","unstructured":"Bertrand Meyer. Object-Oriented Software Construction. Prentice-Hall, Englewood Cliffs, NJ, 1988."},{"key":"19_CR17","doi-asserted-by":"crossref","unstructured":"Nicholas Oxh\u00d8j, Jens Palsberg, and Michael I. Schwartzbach. Making type inference practical. Technical Report DAIMI PB-385, Computer Science Department, Aarhus University, 1992.","DOI":"10.7146\/dpb.v21i385.6618"},{"key":"19_CR18","doi-asserted-by":"crossref","unstructured":"Jens Palsberg and Michael I. Schwartzbach. Object-oriented type inference. In Proc. OOPSLA'91, ACM SIGPLAN Sixth Annual Conference on Object-Oriented Programming Systems, Languages and Applications, 1991.","DOI":"10.1145\/117954.117965"},{"key":"19_CR19","doi-asserted-by":"crossref","unstructured":"Jens Palsberg and Michael I. Schwartzbach. Static typing for object-oriented programming. Computer Science Department, Aarhus University. PB-355. Submitted for publication, 1991.","DOI":"10.7146\/dpb.v20i355.6585"},{"key":"19_CR20","doi-asserted-by":"crossref","unstructured":"Jens Palsberg and Michael I. Schwartzbach. What is type-safe code reuse? In Proc. ECOOP'91, Fifth European Conference on Object-Oriented Programming. Springer-Verlag (LNCS 512), 1991.","DOI":"10.1007\/BFb0057030"},{"key":"19_CR21","doi-asserted-by":"crossref","unstructured":"Uday S. Reddy. Objects as closures: Abstract semantics of object-oriented languages. In Proc. ACM Conference on Lisp and Functional Programming, pages 289\u2013297. ACM, 1988.","DOI":"10.1145\/62678.62721"},{"key":"19_CR22","doi-asserted-by":"crossref","unstructured":"Didier R\u00e9my. Typechecking records and variants in a natural extension of ML. In Sixteenth Symposium on Principles of Programming Languages, pages 77\u201388. ACM Press, January 1989.","DOI":"10.1145\/75277.75284"},{"key":"19_CR23","doi-asserted-by":"crossref","unstructured":"Michael I. Schwartzbach. Type inference with inequalities. In Proc. TAPSOFT'91. Springer-Verlag (LNCS 493), 1991.","DOI":"10.1007\/3-540-53982-4_24"},{"key":"19_CR24","unstructured":"Bjarne Stroustrup. The C++ Programming Language. Addison-Wesley, 1986."},{"key":"19_CR25","doi-asserted-by":"crossref","unstructured":"Norihisa Suzuki. Inferring types in Smalltalk. In Eighth Symposium on Principles of Programming Languages, pages 187\u2013199. ACM Press, January 1981.","DOI":"10.1145\/567532.567553"},{"key":"19_CR26","doi-asserted-by":"crossref","first-page":"115","DOI":"10.3233\/FI-1987-10202","volume":"X","author":"M. Wand","year":"1987","unstructured":"Mitchell Wand. A simple algorithm and proof for type inference. Fundamentae Informaticae, X:115\u2013122, 1987.","journal-title":"Fundamentae Informaticae"},{"key":"19_CR27","doi-asserted-by":"crossref","unstructured":"Mitchell Wand. Type inference for record concatenation and multiple inheritance. In LICS'89, Fourth Annual Symposium on Logic in Computer Science, pages 92\u201397, 1989.","DOI":"10.1109\/LICS.1989.39162"}],"container-title":["Lecture Notes in Computer Science","ECOOP \u201992 European Conference on Object-Oriented Programming"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/BFb0053045.pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2021,7,28]],"date-time":"2021-07-28T02:01:31Z","timestamp":1627437691000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/BFb0053045"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[null]]},"ISBN":["3540556680"],"references-count":27,"URL":"https:\/\/doi.org\/10.1007\/bfb0053045","relation":{},"subject":[]}}