{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,2,21]],"date-time":"2026-02-21T18:50:34Z","timestamp":1771699834379,"version":"3.50.1"},"publisher-location":"Berlin, Heidelberg","reference-count":45,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"value":"9783540539315","type":"print"},{"value":"9783540464501","type":"electronic"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[1991]]},"DOI":"10.1007\/bfb0019443","type":"book-chapter","created":{"date-parts":[[2005,11,23]],"date-time":"2005-11-23T06:40:35Z","timestamp":1132728035000},"page":"151-178","source":"Crossref","is-referenced-by-count":30,"title":["Object-oriented programming versus abstract data types"],"prefix":"10.1007","author":[{"given":"William R.","family":"Cook","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2005,6,9]]},"reference":[{"key":"5_CR1","unstructured":"Abelson and Sussman. The Structure and Interpretation of Computer Programs. MIT Press, 1985."},{"key":"5_CR2","doi-asserted-by":"crossref","unstructured":"N. Adams and J. Rees. Object-oriented programming in Scheme. In Proc. of the ACM Conf. on Lisp and Functional Programming, pages 277\u2013288, 1988.","DOI":"10.1145\/62678.62720"},{"key":"5_CR3","unstructured":"P. America. A behavioral approach to subtyping object-oriented programming languages. In Proc. of the REX School\/Workshop on the Foundations of Object-Oriented Languages, 1990."},{"issue":"4","key":"5_CR4","doi-asserted-by":"crossref","first-page":"539","DOI":"10.1145\/4472.4477","volume":"7","author":"M. P. Atkinson","year":"1985","unstructured":"M. P. Atkinson and R. Morrison. Procedures as persistent data objects. ACM Transactions on Programming Languages and Systems, 7(4):539\u2013559, 1985.","journal-title":"ACM Transactions on Programming Languages and Systems"},{"key":"5_CR5","unstructured":"M. R. Brown and G. Nelson. IO streams: Abstract types, real programs. Technical Report 53, Digital Equipment Corporation Systems Research Center, 1989."},{"key":"5_CR6","doi-asserted-by":"crossref","unstructured":"P. Canning, W. Cook, W. Hill, J. Mitchell, and W. Olthoff. F-bounded polymorphism for object-oriented programming. In Proc. of Conf. on Functional Programming Languages and Computer Architecture, pages 273\u2013280, 1989.","DOI":"10.1145\/99370.99392"},{"key":"5_CR7","doi-asserted-by":"crossref","unstructured":"P. Canning, W. Cook, W. Hill, and W. Olthoff. Interfaces for strongly-typed object-oriented programming. In Proc. of ACM Conf. on Object-Oriented Programming, Systems, Languages and Applications, pages 457\u2013467, 1989.","DOI":"10.1145\/74877.74924"},{"key":"5_CR8","unstructured":"P. Canning, W. Hill, and W. Olthoff. A kernel language for object-oriented programming. Technical Report STL-88-21, Hewlett-Packard Labs, 1988."},{"key":"5_CR9","doi-asserted-by":"crossref","unstructured":"L. Cardelli. A semantics of multiple inheritance. In Semantics of Data Types, volume 173 of Lecture Notes in Computer Science, pages 51\u201368. Springer-Verlag, 1984.","DOI":"10.1007\/3-540-13346-1_2"},{"key":"5_CR10","unstructured":"L. Cardelli, J. Donahue, L. Glassman, M. Jordan, B. Kalsow, and G. Nelson. Modula-3 report (revised). Technical Report 52, Digital Equipment Corporation Systems Research Center, Dec. 1989."},{"key":"5_CR11","unstructured":"L. Cardelli and X. Leroy. Abstract types and the dot notation. Digital Equipment Corporation Systems Research Center, 1990."},{"key":"5_CR12","unstructured":"L. Cardelli and J. C. Mitchell. Operations on records. Technical Report 48, Digital Equipment Corporation Systems Research Center, 1989."},{"issue":"4","key":"5_CR13","doi-asserted-by":"crossref","first-page":"471","DOI":"10.1145\/6041.6042","volume":"17","author":"L. Cardelli","year":"1986","unstructured":"L. Cardelli and P. Wegner. On understanding types, data abstraction, and polymorphism. Computing Surveys, 17(4):471\u2013522, 1986.","journal-title":"Computing Surveys"},{"key":"5_CR14","doi-asserted-by":"crossref","unstructured":"C. Chambers, D. Ungar, and E. Lee. An efficient implementation of SELF, a dynamically-typed object-oriented language based on prototypes. In Proc. of ACM Conf. on Object-Oriented Programming, Systems, Languages and Applications, pages 49\u201370, 1989.","DOI":"10.1145\/74877.74884"},{"key":"5_CR15","doi-asserted-by":"crossref","unstructured":"W. Cook. A Denotational Semantics of Inheritance. PhD thesis, Brown University, 1989.","DOI":"10.1145\/74877.74922"},{"key":"5_CR16","doi-asserted-by":"crossref","unstructured":"W. Cook and J. Palsberg. A denotational semantics of inheritance and its correctness. In Proc. of ACM Conf. on Object-Oriented Programming, Systems, Languages and Applications, pages 433\u2013444, 1989.","DOI":"10.1145\/74877.74922"},{"key":"5_CR17","unstructured":"S. Danforth and C. Tomlinson. Type theories and object-oriented programming. Technical Report PP-040-87, MCC, 1987."},{"key":"5_CR18","doi-asserted-by":"crossref","unstructured":"H. Ehrig and B. Mahr. Fundamentals of Algebraic Specification 1: Equations and Initial Semantics. Springer-Verlag, 1985.","DOI":"10.1007\/978-3-642-69962-7"},{"key":"5_CR19","doi-asserted-by":"crossref","unstructured":"J. Goguen and J. Meseguer. Eqlog: Equality, types, and generic modules for logic programming. In Functional and Logic Programming, pages 295\u2013363. Prentice-Hall, 1986. An earlier version appears in Journal of Logic Programming, Volume 1, Number 2, pages 179\u2013210, September 84.","DOI":"10.1016\/0743-1066(84)90004-9"},{"issue":"1","key":"5_CR20","doi-asserted-by":"crossref","first-page":"68","DOI":"10.1145\/321992.321997","volume":"24","author":"J. Goguen","year":"1977","unstructured":"J. Goguen, J. Thatcher, E. Wagner, and J. Wright. Initial algebra semantics and continuous algebras. J. ACM, 24(1):68\u201395, January 1977.","journal-title":"J. ACM"},{"key":"5_CR21","unstructured":"A. Goldberg and D. Robson. Smalltalk-80: the Language and Its Implementation. Addison-Wesley, 1983."},{"key":"5_CR22","unstructured":"J. Graver. Type-Checking and Type-Inference for Object-Oriented Programming Languages. PhD thesis, University of Illinois, 1989."},{"issue":"6","key":"5_CR23","doi-asserted-by":"crossref","first-page":"297","DOI":"10.1145\/359605.359618","volume":"20","author":"J. Guttag","year":"1977","unstructured":"J. Guttag. Abstract data types and the development of data structures. Communications of the ACM, 20(6):297\u2013404, June 1977.","journal-title":"Communications of the ACM"},{"key":"5_CR24","unstructured":"J. V. Guttag and J. J. Horning. An introduction to the larch shared language. In IFIP, 1983."},{"key":"5_CR25","doi-asserted-by":"crossref","unstructured":"R. E. Johnson. Type-checking smalltalk. In Proc. of ACM Conf. on Object-Oriented Programming, Systems, Languages and Applications, pages 315\u2013321, 1986.","DOI":"10.1145\/28697.28728"},{"key":"5_CR26","unstructured":"K. Kahn, E. Tribble, M. Miller, and D. Bobrow. Vulcan: Logical concurrent objects. In Research Directions in Object-Oriented Programming, pages 75\u2013112. MIT Press, 1987."},{"key":"5_CR27","unstructured":"S. E. Keene. Object-Oriented Programming in Common Lisp. Addison-Wesley, 1989."},{"key":"5_CR28","doi-asserted-by":"crossref","unstructured":"W. R. LaLonde, D. A. Thomas, and J. R. Pugh. An exemplar based smalltalk. In Proc. of ACM Conf. on Object-Oriented Programming, Systems, Languages and Applications, pages 322\u2013330, 1986.","DOI":"10.1145\/28697.28729"},{"key":"5_CR29","doi-asserted-by":"crossref","unstructured":"G. T. Leavens and W. E. Weihl. Reasoning about object-oriented programs that use subtypes. In Proc. of ACM Conf. on Object-Oriented Programming, Systems, Languages and Applications, 1990. to appear.","DOI":"10.1145\/97945.97970"},{"key":"5_CR30","doi-asserted-by":"crossref","first-page":"564","DOI":"10.1145\/359763.359789","volume":"20","author":"B. Liskov","year":"1977","unstructured":"B. Liskov, A. Snyder, R. Atkinson, and C. Schaffert. Abstraction mechanisms in CLU. Communications of the ACM, 20:564\u2013576, 1977.","journal-title":"Communications of the ACM"},{"issue":"4","key":"5_CR31","doi-asserted-by":"crossref","first-page":"50","DOI":"10.1145\/942572.807045","volume":"9","author":"B. Liskov","year":"1974","unstructured":"B. Liskov and S. Zilles. Programming with abstract data types. SIGPlan Notices, 9(4):50\u201359, 1974.","journal-title":"SIGPlan Notices"},{"key":"5_CR32","doi-asserted-by":"crossref","unstructured":"D. B. MacQueen. Using dependent types to express modular structure. In Proc. of the ACM Symp. on Principles of Programming Languages. ACM, 1986.","DOI":"10.1145\/512644.512670"},{"key":"5_CR33","doi-asserted-by":"crossref","unstructured":"J. C. Mitchell and G. D. Plotkin. Abstract types have existential type. In Proc. of the ACM Symp. on Principles of Programming Languages. ACM, 1985.","DOI":"10.1145\/318593.318606"},{"key":"5_CR34","unstructured":"U. S. D. of Defense. Reference manual for the Ada programming language. ANSI\/MIL-STD-1815 A, 1983."},{"key":"5_CR35","doi-asserted-by":"crossref","first-page":"1053","DOI":"10.1145\/361598.361623","volume":"15","author":"D. Parnas","year":"1972","unstructured":"D. Parnas. On the criteria to be used in decomposing systems into modules. Communications of the ACM, 15:1053\u20131058, 1972.","journal-title":"Communications of the ACM"},{"key":"5_CR36","doi-asserted-by":"crossref","first-page":"330","DOI":"10.1145\/355602.361309","volume":"15","author":"D. Parnas","year":"1972","unstructured":"D. Parnas. A technique for software module specification. Communications of the ACM, 15:330\u2013336, 1972.","journal-title":"Communications of the ACM"},{"key":"5_CR37","doi-asserted-by":"crossref","unstructured":"U. S. Reddy. Objects as closures: Abstract semantics of object-oriented languages. In Proc. of the ACM Conf. on Lisp and Functional Programming, pages 289\u2013297, 1988.","DOI":"10.1145\/62678.62721"},{"key":"5_CR38","doi-asserted-by":"crossref","unstructured":"D. R\u00e9my. Typechecking records and variants in a natural extension of ML. In Proc. of the ACM Symp. on Principles of Programming Languages, pages 77\u201388, 1989.","DOI":"10.1145\/75277.75284"},{"key":"5_CR39","unstructured":"J. C. Reynolds. User-defined types and procedural data structures as complementary approaches to data abstraction. In New Advances in Algorithmic Languages, pages 157\u2013168. Inst. de Recherche d'Informatique et d'Automatique, 1975."},{"key":"5_CR40","unstructured":"R. Stallman, D. Weinreb, and D. Moon. Lisp Machine Manual. MIT AI Lab, 1983."},{"key":"5_CR41","unstructured":"J. Stein, editor. Random House Dictionary of the English Language. Random House, 1967."},{"key":"5_CR42","unstructured":"M. Wand. Complete type inference for simple objects. In Proc. IEEE Symposium on Logic in Computer Science, pages 37\u201344, 1987."},{"key":"5_CR43","doi-asserted-by":"crossref","unstructured":"M. Wand. Type inference for record concatenation and multiple inheritance. In Proc. IEEE Symposium on Logic in Computer Science, pages 92\u201397, 1989.","DOI":"10.1109\/LICS.1989.39162"},{"key":"5_CR44","doi-asserted-by":"crossref","unstructured":"N. Wirth. Programming in Modula-2. Springer-Verlag, 1983.","DOI":"10.1007\/978-3-642-96757-3"},{"issue":"9","key":"5_CR45","doi-asserted-by":"crossref","first-page":"142","DOI":"10.1145\/390014.808305","volume":"8","author":"S. N. Zilles","year":"1973","unstructured":"S. N. Zilles. Procedural encapsulation: A linguistic protection mechanism. SIGPlan Notices, 8(9):142\u2013146, 1973.","journal-title":"SIGPlan Notices"}],"container-title":["Lecture Notes in Computer Science","Foundations of Object-Oriented Languages"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/BFb0019443","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2020,4,11]],"date-time":"2020-04-11T04:28:28Z","timestamp":1586579308000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/BFb0019443"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[1991]]},"ISBN":["9783540539315","9783540464501"],"references-count":45,"URL":"https:\/\/doi.org\/10.1007\/bfb0019443","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"value":"0302-9743","type":"print"},{"value":"1611-3349","type":"electronic"}],"subject":[],"published":{"date-parts":[[1991]]}}}