A Model of Reflection for Developing AI Applications

  • Mamdouh H. Ibrahim
  • Fred A. Cummins
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1611)

Abstract

Computational systems that allow their programs to reason about themselves and reflect on their computations are fundamental to delivering true Artificial Intelligence applications. This paper introduces our definition of full reflection of programming languages and environments, and presents a unified model of reflection in a class-based object-oriented environment that is complete and consistent with the stated definition. This model subsumes a number of other models of reflection. An implementation of the model and how it is used to develop an integrated, multi AI programming environment is described to illustrate the validity of the model.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Agha, G.: ACTORS - A Model of Concurrent Computation in Distributed Systems. The MIT Press, Cambridge (1986)Google Scholar
  2. 2.
    Briot, J.-P., Cointe, P.: A Uniform Model for Object-Oriented Languages Using the Class Abstraction. In: Proceedings of IJCAI-1987 (August 1987)Google Scholar
  3. 3.
    Cummins, F., Bejcek, W., Ibrahim, M., O’Leary, D., Woyak, S.: EDS/OWL Reference Manual. Internal Technical Report, EDS R&D, Troy, MI (1987)Google Scholar
  4. 4.
    Cointe, P.: MetaClasses Are First Class Objects: The OBJVLISP Model. In: Proceedings of OOPSLA-1987 (1987)Google Scholar
  5. 5.
    Ferber, J.: Computational Reflection in Class based Object Oriented Languages. In: Proceedings of OOPSLA 1989 (1989)Google Scholar
  6. 6.
    Friedman, D.P., Wand, M.: Reification: Reflection without Metaphysics. In: Proceedings of the 1984 ACM Symposium on Lisp and Functional Programming (1984)Google Scholar
  7. 7.
    Goldberg, A., Robson, D.: Smalltalk-80 – The Language and its Implementation. Addison-Wesley, Reading (1983)MATHGoogle Scholar
  8. 8.
    Gosling, J., Joy, B., Steele, G.: The Java Language Specification. Addison-Wesley, Reading (1996)MATHGoogle Scholar
  9. 9.
    Ibrahim, M., Cummins, F.: KSL: A Reflective Object-Oriented Programming Language. In: Proceedings of the IEEE Computer Society International Conference on Computer Languages (1988)Google Scholar
  10. 10.
    Ibrahim, M., Woyak, S.: An Object-Oriented Environment for Multiple AI Paradigms. In: Proceedings of the IEEE Computer Society Conference on Tools for Artificial Intelligence (1990)Google Scholar
  11. 11.
    Ibrahim, M., Cummins, F.: Objects with Logic. In: Proceedings of ACM CSC 1990 (1990)Google Scholar
  12. 12.
    Ibrahim, M.: Report on the OOPSLA/ECOOP 1990 Workshop on Reflection and Metalevel Architectures in Object-Oriented Programming. In: OOPSLA/ECOOP 1990 Addendum to Proceedings, SIGPLAN Notices Special Issue (1991)Google Scholar
  13. 13.
    Ibrahim, M., Bejcek, W., Cummins, F.: Instance Specialization without Delegation. Journal of Object-Oriented Programming 4(3), 53–56 (1991)Google Scholar
  14. 14.
    Keene, S.E.: Object-Oriented Programming in Common Lisp: A Programmer’s Introduction to CLOS. Addison-Wesley, Reading (1989)MATHGoogle Scholar
  15. 15.
    Maes, P.: Concepts and Experiments in Computational Reflection. In: Proceedings of OOPSLA 1987 (1987)Google Scholar
  16. 16.
    Malenfant, J., Jacques, M., Demers, F.-N.: A Tutorial on Behavioral Reflection and its Implementation. In: Proceedings of Reflection 1996 (1996)Google Scholar
  17. 17.
    Smith, B.C.: Prologue to Reflection 5 and Semantics in a Procedural Language. In: Brachman, R.J., Levesque, H.J. (eds.) Readings in Knowledge Representation. Morgan Kaufmann Publishers, Los Altos (1985)Google Scholar
  18. 18.
    Watanabe, T., Yonezawa, A.: Reflection in an Object-Oriented Concurrent Language. In: Proceedings of OOPSLA 1988 (1988)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1999

Authors and Affiliations

  • Mamdouh H. Ibrahim
    • 1
  • Fred A. Cummins
    • 1
  1. 1.EDS/Leading Technologies and MethodsTroyUSA

Personalised recommendations