Abstract
The development of the programming languages Simula I and Simula 67 is briefly described. An attempt is made also to explain the cultural impact of the languages, in particular the object oriented aspects.
An almost identical version of this paper has been published in Software pioneers, Springer, 2002.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Booch, G., Rumbaugh, J., Jacobson, I.: The Unified Modeling Language User Guide. Addison-Wesley, Reading (1998)
Cannon, H.: Flavors, A Non-Hierarchical Approach to Object-Oriented Programming (Draft 1982)
Dahl, O.-J.: The Simula Storage Allocation Scheme. NCC Doc. 162 (1963)
Dahl, O.-J., Nygaard, K.: SIMULA – A language for programming and description of discrete event systems. Introduction and user’s manual. NCC Publ. no. 11 (1965)
Dahl, O.-J., Nygaard, K.: SIMULA – an ALGOL-based Simulation Language. CACM 9(9), 671–678 (1966)
Dahl, O.-J.: Discrete Event Simulation Languages. In: Genuys, F. (ed.) Programming Languages, pp. 349–394. Academic Press, London (1968)
Dahl, O.-J., Nygaard, K.: Class and Subclass Declarations. In: Buxton, J. (ed.) Simulation Programming Languages. Proceedings from the IFIP Working Conference in Oslo. North Holland, Amsterdam (1968)
Dahl, O.-J., Myhrhaug, B., Nygaard, K.: SIMULA 67 Common Base Language. Norwegian Computing Center (1968)
Dahl, O.-J., Hoare, C.A.R.: Hierarchical Program Structures. In: Dahl, O.-J., Dijkstra, E.W., Hoare, C.A.R. (eds.) Structured Programming, pp. 175–220. Academic Press, London (1972)
Dahl, O.-J.: Can Program Proving be Made Practical? In: Amirchahy, M., Neel, D. (eds.) Les Fondements de la Programmation. IRIA 1977, pp. 57–114 (1977)
Dahl, O.-J.: Time Sequences as a Tool for Describing Process Behaviour. In: Bjorner, D. (ed.) Abstract Software Specifications. LNCS, vol. 86, pp. 273–290. Springer, Heidelberg (1980)
Dahl, O.-J., Owe, O.: Formal Development with ABEL. In: Prehn, S., Toetenel, H. (eds.) VDM 1991. LNCS, vol. 552, pp. 320–363. Springer, Heidelberg (1991)
Dahl, O.-J.: Verifiable Programming. Hoare Series. Prentice Hall, Englewood Cliffs (1992)
Dahl, O.-J.: A Note on Monitor Versions. In: Proceedings of Symposium in the Honour of C.A.R. Hoare at his resignation from the University of Oxford. Oxford University, Oxford (1999), Also available at www.ifi.uio.no/~olejohan (Department of Informatics, University of Oslo)
Goldberg, A., Robson, D.: Smalltalk-80: The Language and its Implementation. Addison Wesley, Reading (1984)
Greenberg, B.S.: The Multics MACLISP Compiler. The Basic Hackery – a Tutorial. MIT Press, Cambridge (1977, 1988, 1996)
Hoare, C.A.R.: Record Handling. In: ALGOL Bulletin no. 21 (1965)
Hoare, C.A.R.: Further Thoughts on Record Handling. In: ALGOL Bulletin no. 23 (1966)
Hoare, C.A.R.: Record Handling. In: Genuys, F. (ed.) Programming Languages, pp. 291–346. Academic Press, London (1968)
Hoare, C.A.R.: Proof of the Correctness of Data Representations. Acta Informatica 1 (1972)
Hoare, C.A.R.: Monitors: an Operating System Structuring Concept. Comm. ACM 17(10), 549–557 (1974)
Gosling, J., Joy, B., Steele, G.: The Java Language Specification. Java(tm) Series. Addison-Wesley, Reading (1989)
Håndlykken, P., Nygaard, K.: The DELTA System Description Language: Motivation, Main Concepts and Experience from use. In: Hünke, H. (ed.) Software Engineering Environments, GMD. North-Holland, Amsterdam (1981)
Keene, S.E.: Object-Oriented Programming in COMMON LISP-A Programmer’s Guide to CLOS. Addison-Wesley, Reading (1989)
Kristensen, B.B., Madsen, O.L., Møller-Pedersen, B., Nygaard, K.: Abstraction Mechanisms in the BETA Programming Language. In: Proceedings of the Tenth ACM Symposium on Principles of Programming Languages, Austin, Texas (1983)
Madsen, O.L., Møller-Pedersen, B., Nygaard, K.: Object Oriented Programming in the BETA Programming Language. Addison-Wesley/ACM Press (1993)
Martin, R.C.: Design Principles and Design Patterns. Microsoft, http://www.objectmentor.com/
Meyer, B.: Eiffel: The Language. Prentice Hall, Englewood Cliffs (1992)
Liskov, B., Snyder, A., Atkinson, R., Schaffert, C.: Abstraction Mechanisms in CLU. Comm. ACM 20(8), 564–576 (1977)
Nygaard, K., Dahl, O.-J.: SIMULA Session. In: Wexelblatt, R. (ed.) History of Programming Languages. ACM, New York (1981)
Owe, O., Dahl, O.-J.: Generator Induction in Order Sorted Algebras. Formal Aspects of Computing 3, 2–20 (1991)
Nygaard, K.: GOODS to Appear on the Stage. In: Proceedings of the 11th European Conference on Object-Oriented Programming. Springer, Heidelberg (1997)
Stroustrup, B.: The C++ Programming Language. Addison-Wesley, Reading (1986)
Ungar, D., Smith, R.B.: SELF: The Power of Simplicity. SIGPLAN Notices 22(12) (1987)
Wang, A., Dahl, O.-J.: Coroutine Sequencing in a Block Structured Environment. BIT 11, 425–449 (1971)
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2004 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Dahl, OJ. (2004). The Birth of Object Orientation: the Simula Languages. In: Owe, O., Krogdahl, S., Lyche, T. (eds) From Object-Orientation to Formal Methods. Lecture Notes in Computer Science, vol 2635. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-39993-3_3
Download citation
DOI: https://doi.org/10.1007/978-3-540-39993-3_3
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-21366-6
Online ISBN: 978-3-540-39993-3
eBook Packages: Springer Book Archive