{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,3,26]],"date-time":"2025-03-26T23:35:00Z","timestamp":1743032100978,"version":"3.40.3"},"publisher-location":"Cham","reference-count":26,"publisher":"Springer International Publishing","isbn-type":[{"type":"print","value":"9783031345173"},{"type":"electronic","value":"9783031345180"}],"license":[{"start":{"date-parts":[[2023,10,11]],"date-time":"2023-10-11T00:00:00Z","timestamp":1696982400000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"},{"start":{"date-parts":[[2023,10,11]],"date-time":"2023-10-11T00:00:00Z","timestamp":1696982400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2024]]},"DOI":"10.1007\/978-3-031-34518-0_13","type":"book-chapter","created":{"date-parts":[[2024,4,29]],"date-time":"2024-04-29T17:01:57Z","timestamp":1714410117000},"page":"379-439","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":0,"title":["Right and Wrong: Ten Choices in Language Design"],"prefix":"10.1007","author":[{"given":"Bertrand","family":"Meyer","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2023,10,11]]},"reference":[{"doi-asserted-by":"publisher","unstructured":"Bertrand Meyer: Design by Contract, Technical Report TR-EI-12\/CO, Interactive Software Engineering Inc., 1986. Republished as [7].","key":"13_CR1","DOI":"10.1007\/978-3-031-34518-0_7"},{"doi-asserted-by":"crossref","unstructured":"Bertrand Meyer: Genericity versus inheritance, in ACM Conference on Object-Oriented Programming Systems, Languages and Applications (OOPSLA 1), Portland, Sept. 29\u2013Oct. 2, 1986, pages 391\u2013405, se.ethz.ch\/\u02dcmeyer\/publications\/acm\/geninh.pdf.","key":"13_CR2","DOI":"10.1145\/28697.28738"},{"unstructured":"Bertrand Meyer, Jean-Marc Nerson and Masanobu Matsuo: Safe and Reusable Programming using Eiffel, in Proc. First European Software Engineering Conference (ESEC 87), Strasbourg (France), September 8\u201311, 1987, LNCS, Springer, 1987, se.ethz.ch\/\u02dcmeyer\/publications\/eiffel\/eiffel_esec.pdf.","key":"13_CR3"},{"doi-asserted-by":"publisher","unstructured":"Bertrand Meyer: Object-Oriented Software Construction, Prentice Hall, 1988. (See also [11].)","key":"13_CR4","DOI":"10.1007\/978-3-031-34518-0_11"},{"key":"13_CR5","volume-title":"Disciplined Exceptions, Technical Report TR-EI-13\/DE","author":"Bertrand Meyer","year":"1988","unstructured":"Bertrand Meyer: Disciplined Exceptions, Technical Report TR-EI-13\/DE, ISE Inc., May 1988, se.ethz.ch\/\u02dcmeyer\/publications\/methodology\/exceptions.pdf."},{"doi-asserted-by":"publisher","unstructured":"Bertrand Meyer: Eiffel: The Language, Prentice Hall, 1990. (See also [26].)","key":"13_CR6","DOI":"10.1007\/978-3-031-34518-0_26"},{"unstructured":"Bertrand Meyer: Design by Contract, in Advances in Object-Oriented Software Engineering, eds. D. Mandrioli and B. Meyer, Prentice Hall, 1991, pp. 1\u201350.","key":"13_CR7"},{"unstructured":"Bertrand Meyer: Reusable Software: The Base Object-Oriented Component Libraries, Prentice Hall, 1994.","key":"13_CR8"},{"doi-asserted-by":"crossref","unstructured":"Bertrand Meyer: Systematic Concurrent Object-Oriented Programming, in Communications of the ACM, vol. 36, no. 9, September 1993, pp. 56\u201380.","key":"13_CR9","DOI":"10.1145\/162685.162705"},{"doi-asserted-by":"publisher","unstructured":"Bertrand Meyer: The Many Faces of Inheritance: A Taxonomy of Taxonomy, in Computer (IEEE), vol. 29, no. 5, May 1996, pp. 105\u2013108, se.ethz.ch\/\u02dcmeyer\/publications\/computer\/taxonomy.pdf. (Similar material in section 24.5 of [11].)","key":"13_CR10","DOI":"10.1007\/978-3-031-34518-0_11"},{"doi-asserted-by":"publisher","unstructured":"Bertrand Meyer: Object-Oriented Software Construction, second edition, Prentice Hall, 1997. (Considerably extended revision of [4].) A high-quality PDF version of the full text was recently made available at bertrandmeyer.com\/OOSC2.","key":"13_CR11","DOI":"10.1007\/978-3-031-34518-0_4"},{"unstructured":"Paul Dubois, Mark Howard, Bertrand Meyer, Michael Schweitzer and Emmanuel Stapf: From Calls to Agents, in Journal of Object-Oriented Programming (JOOP), vol. 12, no 6, June 1999, se.ethz.ch\/\u02dcmeyer\/publications\/joop\/agent.pdf.","key":"13_CR12"},{"doi-asserted-by":"crossref","unstructured":"Bertrand Meyer: Attached Types and their Application to Three Open Problems of Object-Oriented Programming, in ECOOP 2005 (Proceedings of European Conference on Object-Oriented Programming, Edinburgh, 25\u201329 July 2005), ed. Andrew Black, LNCS 3586, Springer, 2005, pages 1\u201332, se.ethz.ch\/\u02dcmeyer\/publications\/lncs\/attached.pdf.","key":"13_CR13","DOI":"10.1007\/11531142_1"},{"doi-asserted-by":"publisher","unstructured":"Bertrand Meyer: Agents, iteration and introspection, chapter from forthcoming Standard Eiffel [26].","key":"13_CR14","DOI":"10.1007\/978-3-031-34518-0_26"},{"unstructured":"Ecma International: ECMA standard: Eiffel Analysis, Design and Programming Language (ed. Bertrand Meyer), approved as International Standard 367 by ECMA International, 21 June 2005; revised edition, December 2006, approved by the International Standards Organization as the ISO standard ISO\/IEC 25436:2006. Text available at www.ecma-international.org\/publications\/standards\/Ecma-367.htm.","key":"13_CR15"},{"unstructured":"Bertrand Meyer: Software Architecture: Functional vs. Object-Oriented Design, in Beautiful Architecture, eds. Diomidis Spinellis and Georgios Gousios, O\u2019Reilly, 2009, pages 315\u2013348, https:\/\/se.ethz.ch\/\u02dcmeyer\/publications\/functional\/meyer_functional_oo.pdf.","key":"13_CR16"},{"unstructured":"Bertrand Meyer: Touch of Class: Learning to Program Well Using Object Technology and Design by Contract, Springer, 2009. Book page, with extracts, at touch.ethz.ch.","key":"13_CR17"},{"doi-asserted-by":"crossref","unstructured":"Bertrand Meyer, Ilinca Ciupa, Andreas Leitner, Arno Fiva, Yi Wei and Emmanuel Stapf: Programs that Test Themselves, in IEEE Computer, vol. 42, no. 9, pages 46\u201355, September 2009, se.ethz.ch\/\u02dcmeyer\/publications\/computer\/test_themselves.pdf. See also AutoTest page at https:\/\/se.ethz.ch\/research\/autotest\/.","key":"13_CR18","DOI":"10.1109\/MC.2009.296"},{"doi-asserted-by":"crossref","unstructured":"Bertrand Meyer, Alexander Kogtenkov and Emmanuel Stapf: Avoid a Void: The Eradication of Null Dereferencing, in Reflections on the Work of C.A.R. Hoare, eds. C. B. Jones, A.W. Roscoe and K.R. Wood, Springer, 2010, pages 189\u2013211, available at https:\/\/se.ethz.ch\/\u02dcmeyer\/publications\/lncs\/attached.pdf.","key":"13_CR19","DOI":"10.1007\/978-1-84882-912-1_9"},{"doi-asserted-by":"crossref","unstructured":"Martin Nordio, Roman Mitin and Bertrand Meyer: Advanced Hands-on Training for Distributed and Outsourced Software Engineering, in ICSE 2010, Cape Town, IEEE Computer Society Press, 2010, se.ethz.ch\/\u02dcmeyer\/publications\/teaching\/dose_icse.pdf. More publications and results on the DOSE distributed course and project at se.ethz.ch\/research\/dose.","key":"13_CR20","DOI":"10.1145\/1806799.1806879"},{"doi-asserted-by":"crossref","unstructured":"Benjamin Morandi, Sebastian Nanz and Bertrand Meyer: Can Asynchronous Exceptions Expire?, in Proc. of 5th International Workshop on Exception Handling (WEH 2012), ICSE, Zurich, June 2012, IEEE Computer Press, 2012, available at se.ethz.ch\/\u02dcmeyer\/publications\/concurrency\/exceptions_expire.pdf.","key":"13_CR21","DOI":"10.1109\/WEH.2012.6226600"},{"doi-asserted-by":"crossref","unstructured":"Julian Tschannen, Carlo A. Furia, Martin Nordio and Bertrand Meyer: Automatic Verification of Advanced Object-Oriented Features: The AutoProof Approach, in Tools for Practical Software Verification; International Summer School, LASER 2011, eds. Bertrand Meyer and Martin Nordio [350], LNCS 7682, Springer, December 2012, se.ethz.ch\/\u02dcmeyer\/publications\/proofs\/autoproof.pdf. Web-based version of AutoProof and extensive further publications at autoproof.sit.org.","key":"13_CR22","DOI":"10.1007\/978-3-642-35746-6_5"},{"doi-asserted-by":"crossref","unstructured":"Bertrand Meyer: Agile! The Good, the Hype and the Ugly, Springer, 2014. Book page with extracts at agile.ethz.ch.","key":"13_CR23","DOI":"10.1007\/978-3-319-05155-0"},{"unstructured":"Bertrand Meyer: Theory of Programs, in Proc. LASER summer school on Software 2013-2014 2007\/2008, eds. B. Meyer and M. Nordio, Springer LNCS 8987, 2015, se.ethz.ch\/\u02dcmeyer\/publications\/proofs\/top.pdf.","key":"13_CR24"},{"unstructured":"Bertrand Meyer, Alisa Arkadova and Alexander Kogtenkov: The Concept of Class Invariant in Object-Oriented Programming, to appear in Formal Aspects of Computing (ACM), 2024. (Preprint available at arxiv.org\/abs\/2109.06557, 2021-2023.)","key":"13_CR25"},{"doi-asserted-by":"publisher","unstructured":"Bertrand Meyer: Standard Eiffel, new version of [6], in progress.","key":"13_CR26","DOI":"10.1007\/978-3-031-34518-0_6"}],"container-title":["The French School of Programming"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-031-34518-0_13","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2024,4,29]],"date-time":"2024-04-29T17:08:23Z","timestamp":1714410503000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/978-3-031-34518-0_13"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2023,10,11]]},"ISBN":["9783031345173","9783031345180"],"references-count":26,"URL":"https:\/\/doi.org\/10.1007\/978-3-031-34518-0_13","relation":{},"subject":[],"published":{"date-parts":[[2023,10,11]]},"assertion":[{"value":"11 October 2023","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}}]}}