Skip to main content

A Model of Reflection for Developing AI Applications

  • Conference paper
Multiple Approaches to Intelligent Systems (IEA/AIE 1999)

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.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Agha, G.: ACTORS - A Model of Concurrent Computation in Distributed Systems. The MIT Press, Cambridge (1986)

    Google Scholar 

  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. 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. Cointe, P.: MetaClasses Are First Class Objects: The OBJVLISP Model. In: Proceedings of OOPSLA-1987 (1987)

    Google Scholar 

  5. Ferber, J.: Computational Reflection in Class based Object Oriented Languages. In: Proceedings of OOPSLA 1989 (1989)

    Google Scholar 

  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. Goldberg, A., Robson, D.: Smalltalk-80 – The Language and its Implementation. Addison-Wesley, Reading (1983)

    MATH  Google Scholar 

  8. Gosling, J., Joy, B., Steele, G.: The Java Language Specification. Addison-Wesley, Reading (1996)

    MATH  Google Scholar 

  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. 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. Ibrahim, M., Cummins, F.: Objects with Logic. In: Proceedings of ACM CSC 1990 (1990)

    Google Scholar 

  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. Ibrahim, M., Bejcek, W., Cummins, F.: Instance Specialization without Delegation. Journal of Object-Oriented Programming 4(3), 53–56 (1991)

    Google Scholar 

  14. Keene, S.E.: Object-Oriented Programming in Common Lisp: A Programmer’s Introduction to CLOS. Addison-Wesley, Reading (1989)

    MATH  Google Scholar 

  15. Maes, P.: Concepts and Experiments in Computational Reflection. In: Proceedings of OOPSLA 1987 (1987)

    Google Scholar 

  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. 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. Watanabe, T., Yonezawa, A.: Reflection in an Object-Oriented Concurrent Language. In: Proceedings of OOPSLA 1988 (1988)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1999 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Ibrahim, M.H., Cummins, F.A. (1999). A Model of Reflection for Developing AI Applications. In: Imam, I., Kodratoff, Y., El-Dessouki, A., Ali, M. (eds) Multiple Approaches to Intelligent Systems. IEA/AIE 1999. Lecture Notes in Computer Science(), vol 1611. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-48765-4_32

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-48765-4_32

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-66076-7

  • Online ISBN: 978-3-540-48765-4

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics