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

Reply via email to