{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,4,12]],"date-time":"2026-04-12T17:09:13Z","timestamp":1776013753147,"version":"3.50.1"},"publisher-location":"New York, NY, USA","reference-count":63,"publisher":"ACM","license":[{"start":{"date-parts":[[2022,11,29]],"date-time":"2022-11-29T00:00:00Z","timestamp":1669680000000},"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":[[2022,11,29]]},"DOI":"10.1145\/3563835.3568735","type":"proceedings-article","created":{"date-parts":[[2022,12,1]],"date-time":"2022-12-01T19:29:59Z","timestamp":1669922999000},"page":"220-239","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":4,"title":["What Object-Oriented Programming Was Supposed to Be: Two Grumpy Old Guys\u2019 Take on Object-Oriented Programming"],"prefix":"10.1145","author":[{"given":"Ole Lehrmann","family":"Madsen","sequence":"first","affiliation":[{"name":"Aarhus University, Denmark"}]},{"given":"Birger","family":"M\u00f8ller-Pedersen","sequence":"additional","affiliation":[{"name":"University of Oslo, Norway"}]}],"member":"320","published-online":{"date-parts":[[2022,12]]},"reference":[{"key":"e_1_3_2_1_1_1","unstructured":"O.-J. Dahl B. Myhrhaug and K. Nygaard. 1968. SIMULA 67 Common Base Language ( Editions 1968 1970 1972 1984 ). Norwegian Computing Center Oslo"},{"key":"e_1_3_2_1_2_1","volume-title":"Boston, MA, USA: Addison-Wesley Longman Publishing Co.","author":"Goldberg A.","year":"1983","unstructured":"A. Goldberg and D. Robson. 1983. Smalltalk-80 : the language and its implementation. Boston, MA, USA: Addison-Wesley Longman Publishing Co., Inc."},{"key":"e_1_3_2_1_3_1","volume-title":"Self: The Power of Simplicity. In: OOPSLA' 87-Object-Oriented Programming Systems, Languages and Applications.","author":"Ungar D.","year":"1987","unstructured":"D. Ungar and R.B. Smith. 1987. Self: The Power of Simplicity. In: OOPSLA' 87-Object-Oriented Programming Systems, Languages and Applications. Orlando, Florida, USA. ACM Press."},{"key":"e_1_3_2_1_4_1","unstructured":"G. Booch. 1991. Object-Oriented Analysis and Design with Applications. Redwood City: Benjamin\/Cummings."},{"key":"e_1_3_2_1_5_1","unstructured":"J. Rumbaugh M. Blaha W. Premerlani F. Eddy and W. Lorensen. 1991. Object-Oriented Modeling and Design. Prentice Hall."},{"key":"e_1_3_2_1_6_1","volume-title":"N.J : Prentice-Hall.","author":"Coad P.","year":"1991","unstructured":"P. Coad and E. Yourdon. 1991. Object-Oriented Analysis. Englewood Cliffs, N.J : Prentice-Hall."},{"key":"e_1_3_2_1_7_1","unstructured":"G. Booch J. Rumbaugh and I. Jacobson. 1998. The Unified Modeling Language Reference Manual. Addison Wesley."},{"key":"e_1_3_2_1_8_1","volume-title":"In: MoDELS","author":"Madsen O.L.","year":"2010","unstructured":"O.L. Madsen and B. M\u00f8ller-Pedersen. 2010. A Unified Approach to Modeling and Programming. In: MoDELS 2010. Oslo. Springer."},{"key":"e_1_3_2_1_9_1","volume-title":"8th International Symposium On Leveraging Applications of Formal Methods, Verification and Validation. Limassol. Springer LNCS 11244","author":"Madsen O.L.","unstructured":"O.L. Madsen and B. M\u00f8ller-Pedersen. 2018. This is not a Model. In: 8th International Symposium On Leveraging Applications of Formal Methods, Verification and Validation. Limassol. Springer LNCS 11244."},{"key":"e_1_3_2_1_10_1","volume-title":"NOKOBIT","author":"Selic B.","year":"2012","unstructured":"B. Selic. 2012. Key Note: Model-Based Software Engineering in Industry: Revolution, Evolution, or Smoke? In: NOKOBIT 2012."},{"key":"e_1_3_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1007\/11785477_10"},{"key":"e_1_3_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1145\/365813.365819"},{"key":"e_1_3_2_1_13_1","unstructured":"C.A.R. Hoare. 1965. Record Handling. ALGOL Bulletin ( 21 )."},{"key":"e_1_3_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1145\/988113.988122"},{"key":"e_1_3_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.5555\/129093"},{"key":"e_1_3_2_1_16_1","volume-title":"Object-Oriented Programming: An Evolutionary Approach","author":"Cox B.","unstructured":"B. Cox. 1986. Object-Oriented Programming: An Evolutionary Approach. Addison-Wesley Longman, Incorporated."},{"key":"e_1_3_2_1_17_1","unstructured":"J. Gosling B. Joy and G. Steele. 1999. The Java (TM) Language Specification. Addison-Wesley."},{"key":"e_1_3_2_1_18_1","unstructured":"A. Hejlsberg S. Wiltamuth and P. Golde. 2003. The C# Programming Language. Addison-Wesley."},{"key":"e_1_3_2_1_19_1","unstructured":"Python_Software_Foundation. 2019. Python. https:\/\/www.python.org https:\/\/docs.python.org\/3\/reference\/index.html."},{"key":"e_1_3_2_1_20_1","unstructured":"Pluralsight. 2022. JavaScript. https:\/\/www.javascript.com\/."},{"key":"e_1_3_2_1_21_1","unstructured":"O.L. Madsen B. M\u00f8ller-Pedersen and K. Nygaard. 1993. Object-Oriented Programming in the BETA Programming Language. Addison Wesley."},{"key":"e_1_3_2_1_22_1","volume-title":"HOPL III-The third ACM SIGPLAN Conference on History of Programming Languages.","author":"Kristensen B.B.","unstructured":"B.B. Kristensen, O.L. Madsen, and B. M\u00f8llerPedersen. 2007. The When, Why and Why Not of the BETA Programming Language. In: HOPL III-The third ACM SIGPLAN Conference on History of Programming Languages. San Diego."},{"key":"e_1_3_2_1_23_1","volume-title":"From ECOOP'87 to ECOOP 2006 and beyond. In: ECOOP'06: Proceedings of the 20th European conference on Object-Oriented Programming","author":"Madsen O.L.","year":"2006","unstructured":"O.L. Madsen. 2006. From ECOOP'87 to ECOOP 2006 and beyond. In: ECOOP'06: Proceedings of the 20th European conference on Object-Oriented Programming. Nantes, France. Springer-Verlag Berlin, Heidelberg."},{"key":"e_1_3_2_1_24_1","doi-asserted-by":"crossref","unstructured":"O.L. Madsen. 1995. Open Issues in Object-Oriented Programming. Software Practice & Experience 25 ( S4 ).","DOI":"10.1002\/spe.4380251303"},{"key":"e_1_3_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1145\/1640089.1640133"},{"key":"e_1_3_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.ic.2013.08.002"},{"key":"e_1_3_2_1_27_1","volume-title":"Magda: A New Language for Modularity. In: 26th European conference on Object-Oriented Programming.","author":"Bono V.","unstructured":"V. Bono, J. Ku\u015bmierek, and M. Mulatero. 2012. Magda: A New Language for Modularity. In: 26th European conference on Object-Oriented Programming."},{"key":"e_1_3_2_1_28_1","volume-title":"Object-Oriented Programming with Java-An Introduction","author":"D.J.","unstructured":"D.J. Barnes 2000. Object-Oriented Programming with Java-An Introduction,. Prentice Hall, Upper Saddle River, New Jersey."},{"key":"e_1_3_2_1_29_1","volume-title":"Object-Oriented Software Construction","author":"Meyer B.","unstructured":"B. Meyer. 1988. Object-Oriented Software Construction. Prentice-Hall."},{"key":"e_1_3_2_1_30_1","volume-title":"In: ECOOP' 88-European Conference on Object-Oriented Programming.","author":"Wegner P.","year":"1988","unstructured":"P. Wegner and S. Zdonick. 1988. Inheritance as an Incremental Modification Mechanism or What Like is and Isn't Like. In: ECOOP' 88-European Conference on Object-Oriented Programming. Oslo, Norway. Springer Verlag."},{"key":"e_1_3_2_1_31_1","unstructured":"D.G. Bobrow and M. Stefik. 1986. The LOOPS Manual."},{"key":"e_1_3_2_1_32_1","volume-title":"Flavors: A Non-Hierarchical Approach to Object-Oriented Programming.","author":"Cannon H.","year":"1982","unstructured":"H. Cannon. 1982. Flavors: A Non-Hierarchical Approach to Object-Oriented Programming."},{"key":"e_1_3_2_1_33_1","unstructured":"S.E. Keene. 1989. Object-Oriented Programming in COMMON Lisp-a Programmer's Guide to CLOS. Reading MA: Addison Wesley"},{"key":"e_1_3_2_1_34_1","unstructured":"B. Meyer. 2006. Basic Eiffel language mechanisms. http:\/\/se.ethz.ch\/~meyer\/publications\/online\/eiffel\/ba sic. html."},{"key":"e_1_3_2_1_35_1","unstructured":"Eiffel. 2022. Eiffel-ET: Inheritance. https:\/\/www.eiffel.org\/doc\/eiffel\/ET-_Inheritance."},{"key":"e_1_3_2_1_36_1","volume-title":"In: POPL.","author":"Flatt M.","year":"1998","unstructured":"M. Flatt, S. Krishnamurthim, and M. Felleisen. 1998. Classes and Mixins. In: POPL. San Diego."},{"key":"e_1_3_2_1_37_1","volume-title":"In: Joint OOPSLA\/ECOOP'90-Conference on Object-Oriented Programming: Systems, Languages, and Applications & European Conference on ObjectOriented Programming.","author":"Bracha G.","year":"1990","unstructured":"G. Bracha and W. Cook. 1990. Mixin-based Inheritance. In: Joint OOPSLA\/ECOOP'90-Conference on Object-Oriented Programming: Systems, Languages, and Applications & European Conference on ObjectOriented Programming. Ottawa, Canada. ACM Press"},{"key":"e_1_3_2_1_38_1","volume-title":"OOPSLA'03-17th International Conference on ObjectOriented Programming Systems, Languages and Applications.","author":"Black A.","unstructured":"A. Black, N. Sch\u00e4rli, and S. Ducasse. 2003. Applying traits to the Smalltalk collection hierarchy. In: OOPSLA'03-17th International Conference on ObjectOriented Programming Systems, Languages and Applications."},{"key":"e_1_3_2_1_39_1","doi-asserted-by":"publisher","DOI":"10.5555\/2988396"},{"key":"e_1_3_2_1_40_1","volume-title":"The Development of the SIMULA Languages. In: ACM SIGPLAN History of Programming Languages Conference.","author":"Dahl O.-J.","unstructured":"O.-J. Dahl and K. Nygaard. 1978. The Development of the SIMULA Languages. In: ACM SIGPLAN History of Programming Languages Conference."},{"key":"e_1_3_2_1_41_1","volume-title":"In: POPL \u00b490-17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages.","author":"Cook W.R.","year":"1990","unstructured":"W.R. Cook, W. Hill, and P.S. Canning. 1990. Inheritance is not subtyping. In: POPL \u00b490-17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages. San Francisco, California, US. ACM New York, NY, USA"},{"key":"e_1_3_2_1_42_1","doi-asserted-by":"publisher","DOI":"10.1145\/197320.197383"},{"key":"e_1_3_2_1_43_1","volume-title":"The Essence of Inheritance. In: The-1th Workshop on New ObjectOriented Languages (NOOL)","author":"Black A.P.","unstructured":"A.P. Black, K.B. Bruce, and J. Noble. 2016. The Essence of Inheritance. In: The-1th Workshop on New ObjectOriented Languages (NOOL). Amsterdam."},{"key":"e_1_3_2_1_44_1","volume-title":"The Essence of Subclassing. In: The-1th Workshop on New Object-Oriented Languages (NOOL)","author":"Madsen O.L.","unstructured":"O.L. Madsen and B. M\u00f8ller-Pedersen. 2016. The Essence of Subclassing. In: The-1th Workshop on New Object-Oriented Languages (NOOL). Amsterdam."},{"key":"e_1_3_2_1_45_1","unstructured":"W. Cook. 2012. A Proposal for Simplified Modern Definitions of \"Object\" and \"Object Oriented\". https:\/\/wcook.blogspot.com\/ 2012 \/07\/proposal-forsimplified-modern.html."},{"key":"e_1_3_2_1_46_1","doi-asserted-by":"crossref","unstructured":"B. Meyer. 2003. The Outside-In method of teaching introductory programming. http:\/\/se.ethz.ch\/~meyer\/publications\/teaching\/teachi ng-ispj.pdf.","DOI":"10.1007\/978-3-540-39866-0_9"},{"key":"e_1_3_2_1_47_1","volume-title":"ECOOP '88 European Conference on Object-Oriented Programming Springer","author":"Knudsen J.L.","year":"1988","unstructured":"J.L. Knudsen and O.L. Madsen. 1988. Teaching ObjectOriented Programming is more than teaching ObjectOriented Programming Languages. In: ECOOP '88 European Conference on Object-Oriented Programming Springer, 1988. s. 21-40 (Lecture Notes in Computer Science, Bind 322 ). Oslo, Norway. Springer, LNC 322."},{"key":"e_1_3_2_1_48_1","volume-title":"In: ECOOP' 88-European Conference on Object-Oriented Programming.","author":"Madsen O.L.","year":"1988","unstructured":"O.L. Madsen and B. M\u00f8ller-Pedersen. 1988. What Object-Oriented Programming May Be-and What It Does Not Have to Be. In: ECOOP' 88-European Conference on Object-Oriented Programming. Oslo, Norway. Springer Verlag."},{"key":"e_1_3_2_1_49_1","volume-title":"Concurrent Objects and Beyond","author":"Madsen O.L.","unstructured":"O.L. Madsen. 2014. Building Safe Concurrency Abstractions, in Concurrent Objects and Beyond, G. Agha, et al., Editors. Springer, Berlin, Heidelberg."},{"key":"e_1_3_2_1_50_1","doi-asserted-by":"publisher","DOI":"10.1145\/3477113.3487271"},{"key":"e_1_3_2_1_51_1","volume-title":"In: OOPSLA' 89-Object-Oriented Programming, Systems Languages and Applications.","author":"Madsen O.L.","year":"1989","unstructured":"O.L. Madsen and B. M\u00f8ller-Pedersen. 1989. Virtual Classes-A Powerful Mechanism in Object-Oriented Programming. In: OOPSLA' 89-Object-Oriented Programming, Systems Languages and Applications. New Orleans, Louisiana. ACM Press."},{"key":"e_1_3_2_1_52_1","article-title":"The Programming Language Concurrent Pascal","author":"Brinch-Hansen P.","year":"1975","unstructured":"P. Brinch-Hansen. 1975. The Programming Language Concurrent Pascal. IEEE Transactions on Software Engineering, SE-1 ( 2 ).","journal-title":"IEEE Transactions on Software Engineering, SE-1 ( 2 )."},{"key":"e_1_3_2_1_53_1","volume-title":"International Symposium On Leveraging Applications of Formal Methods, Verification and Validation. Rhodes. Springer.","author":"Madsen O.L.","unstructured":"O.L. Madsen and B. M\u00f8ller-Pedersen. 2022. Using supplementary properties to reduce the need for documentation. In: International Symposium On Leveraging Applications of Formal Methods, Verification and Validation. Rhodes. Springer."},{"key":"e_1_3_2_1_54_1","unstructured":"X. Lee : Alan Kay on Object Oriented Programing. Interview with A. Kay. http:\/\/xahlee.info\/comp\/Alan_Kay_on_object_oriente d_programing.html 2015"},{"key":"e_1_3_2_1_55_1","volume-title":"In: TOOLS'92: Technology of Object-Oriented Languages and Systems. Dortmund","author":"Madsen O.L.","year":"1992","unstructured":"O.L. Madsen and B. M\u00f8ller-Pedersen. 1992. Part Objects and Their Location. In: TOOLS'92: Technology of Object-Oriented Languages and Systems. Dortmund. Prentice Hall."},{"key":"e_1_3_2_1_56_1","doi-asserted-by":"publisher","DOI":"10.1145\/263700.263754"},{"key":"e_1_3_2_1_57_1","volume-title":"In: Joint OOPSLA\/ECOOP' 90-Conference on Object-Oriented Programming, Systems, Languages, and Applications & European Conference on ObjectOriented Programming.","author":"Madsen O.L.","year":"1990","unstructured":"O.L. Madsen, B. Magnusson, and B. M\u00f8ller-Pedersen. 1990. Strong Typing of Object-Oriented Languages Revisited. In: Joint OOPSLA\/ECOOP' 90-Conference on Object-Oriented Programming, Systems, Languages, and Applications & European Conference on ObjectOriented Programming. Ottawa, Canada. ACM Press"},{"key":"e_1_3_2_1_58_1","unstructured":"O.-J. Dahl and K. Nygaard. 1967. Class and Subclass Declarations in Simulation Programming Languages J.N. Buxton Editor. North Holland Amsterdam."},{"key":"e_1_3_2_1_59_1","volume-title":"ACM\/IEEE Fall Joint Computer Conference","author":"Borning A.","year":"1986","unstructured":"A. Borning. 1986. Classes versus Prototypes in ObjectOriented Languages. In: ACM\/IEEE Fall Joint Computer Conference. Dallas, Texas."},{"key":"e_1_3_2_1_60_1","volume-title":"OOPSLA.","author":"Liebermann H.","unstructured":"H. Liebermann. 1986. Using Prototypical Objects to Implement Shared Behavior in Object Oriented Systems. In: OOPSLA. Portland, Oregon."},{"key":"e_1_3_2_1_61_1","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-45102-1_1"},{"key":"e_1_3_2_1_62_1","unstructured":"informIT: Interview with Programming Expert Bertrand Meyer. Interview with B. Meyer. 2001"},{"key":"e_1_3_2_1_63_1","volume-title":"Design and Evolution of C++","author":"Stroustrup B.","unstructured":"B. Stroustrup. 1994. Design and Evolution of C++. Addison-Wesley Professional."}],"event":{"name":"Onward! '22: 2022 ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software","location":"Auckland New Zealand","acronym":"Onward! '22","sponsor":["SIGPLAN ACM Special Interest Group on Programming Languages"]},"container-title":["Proceedings of the 2022 ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3563835.3568735","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3563835.3568735","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,17]],"date-time":"2025-06-17T19:00:08Z","timestamp":1750186808000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3563835.3568735"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2022,11,29]]},"references-count":63,"alternative-id":["10.1145\/3563835.3568735","10.1145\/3563835"],"URL":"https:\/\/doi.org\/10.1145\/3563835.3568735","relation":{},"subject":[],"published":{"date-parts":[[2022,11,29]]},"assertion":[{"value":"2022-12-01","order":3,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}