1987 · 515 citations · 19 references
ComputingComputer ScienceComputer ArchitectureDesign TheoryProgramming LanguagesData TypesObject-oriented DesignObject-oriented ProgrammingProgramming Language DesignSoftware ArchitectureSoftware DesignAbstractionDesign LanguageLanguage DesignObject ModelingObject-oriented ArchitectureObject-oriented Language DesignObjectsStrong Typing
The design space of object-based languages is characterized in terms of objects, classes, inheritance, data abstraction, strong typing, concurrency, and persistence. Language classes (paradigms) associated with interesting subsets of these features are identified and language design issues for selected paradigms are examined. Orthogonal dimensions that span the object-oriented design space are related to non-orthogonal features of real languages. The self-referential application of object-oriented methodology to the development of object-based language paradigms is demonstrated.
19
Communicating sequential processes
C. A. R. Hoare · Communications of the ACM · 1983 · 3.8K citations · Full text
Communicating sequential processes
C. A. R. Hoare · Communications of the ACM · 1978 · 3.5K citations · Full text
C. A. R. Hoare · Communications of the ACM · 1974 · 1.5K citations · Full text
Barbara Liskov, Alan Snyder, Russell R. Atkinson et al. · Communications of the ACM · 1977 · 772 citations · Full text