ACM SIGPLAN OOPS Messenger · 1990 · 437 citations · 18 references
ComputingComputer ScienceFormal MethodsProgramming LanguagesSoftware EngineeringComponent-based Software EngineeringConcurrent ModelingConcurrent ProgrammingObject-oriented DesignObject-oriented ProgrammingSoftware ModelingComponent ModelsComponent-based ModelingMathematical Programming ModelsObject ModelingObject-oriented ArchitectureObjects
We address the following questions for object-oriented programming: What is it? What are its goals? What are its origins? What are its paradigms? What are its design alternatives? What are its models of concurrency? What are its formal computational models? What comes after object-oriented programming? Starting from software engineering goals, we examine the origins and paradigms of object-oriented programming, explore its language design alternatives, consider its models of concurrency, and review its mathematical models to make them accessible to nonmathematical readers. Finally, we briefly speculate on what may come after object-oriented programming and conclude that it is a robust component-based modeling paradigm that is both effective and fundamental. This paper expands on the OOPSLA 89 keynote talk.
18
Statecharts: a visual formalism for complex systems
David Harel · Science of Computer Programming · 1987 · 6.7K citations
Wojciech Penczek · Science of Computer Programming · 1990 · 4K citations
Object-oriented software construction
Pierre America · Science of Computer Programming · 1989 · 2K citations
Concepts and experiments in computational reflection
Pattie Maes · 1987 · 1K citations