1987 · 1K citations · 7 references
ComputingComputer ScienceProgramming LanguagesSoftware EngineeringSystems ProgrammingLogic ProgrammingObject-oriented DesignObject-oriented ProgrammingProgramming Language DesignSoftware ArchitectureSoftware DesignObject-oriented ArchitectureObject-oriented Language DesignObjectsProgramming ModelsRule Languages
This paper brings some perspective to various concepts in computational reflection. A definition of computational reflection is presented, the importance of computational reflection is discussed and the architecture of languages that support reflection is studied. Further, this paper presents a survey of some experiments in reflection which have been performed. Examples of existing procedural, logic-based and rule-based languages with an architecture for reflection are briefly presented. The main part of the paper describes an original experiment to introduce a reflective architecture in an object-oriented language. It stresses the contributions of this language to the field of object-oriented programming and illustrates the new programming style made possible. The examples show that a lot of programming problems that were previously handled on an ad hoc basis, can in a reflective architecture be solved more elegantly.
7
SIMULA: an ALGOL-based simulation language
Ole-Johan Dahl, Kristen Nygaard · Communications of the ACM · 1966 · 863 citations · Full text
Object-oriented programming: Themes and variations
Mark Stefik, Daniel G. Bobrow · AI Magazine · 1986 · 722 citations
Knowledge Based Systems in Artificial Intelligence
Telematics and Informatics · 1986 · 466 citations
Prolegomena to a theory of mechanized formal reasoning
Richard W. Weyhrauch · Artificial Intelligence · 1980 · 404 citations