So I think there are two kinds of reflection; 1. Out-of-program reflection, e.g. by a debugger. This is a case where it may make sense not to honor encapsulation boundaries, though that actually depends on the security model. It's a *little* bit like the notion of a design-time COM interface that is used by an interface builder.
2. In-program reflection, in which the program is inspecting itself at run time in a way that bypasses the language protections. If you can bypass them, then they ain't protections. How much of what is currently done with reflection actually *requires* reflection? How much could be accomplished using only static reflection? What kinds of things are missing as first-class concepts that would help make reflection less necessary? In the limit, I'm mindful that C/C++ have *zero* reflection, and it really doesn't seem to slow them down all that much. But maybe I see it that way merely because *I* have never used it and don't perceive the lack. shap
_______________________________________________ bitc-dev mailing list [email protected] http://www.coyotos.org/mailman/listinfo/bitc-dev
