CSC/ECE 517 Fall 2007/ch1 1c JF: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
== | == Introduction == | ||
[http://en.wikipedia.org/wiki/Reflection_(computer_science) Reflection] allows programs to act in a more "intelligent" way by providing programs the ability to answer questions about what they do and modify behavior based on those answers. | [http://en.wikipedia.org/wiki/Reflection_(computer_science) Reflection] allows programs to act in a more "intelligent" way by providing programs the ability to answer questions about what they do and modify behavior based on those answers. Languages can be reflective by either including this information in each object, or by including a package that grants access to this information. | ||
== Introspection == | == Introspection == |
Revision as of 19:37, 6 September 2010
Introduction
Reflection allows programs to act in a more "intelligent" way by providing programs the ability to answer questions about what they do and modify behavior based on those answers. Languages can be reflective by either including this information in each object, or by including a package that grants access to this information.
Introspection
Reflective langauges can answer questions about themselves and their methods.
Reflective Language Examples
Ruby
Reflective Package Examples
Java
Feature 2
Reflective Language Examples
Reflective Package Examples
References
[1] Reflection-Oriented Programming
[2] Procedural Reflection in Programming Languages
[3] Evolving a Reflective Language Lessons Learned from Implementing Traits