Hi!

> Been AWOL for a while and getting back to this, doesn't seem like any 
> resolution has occurred, just the conversation has died down.
> 
> I would propose that:
> 
> 1) Internal accessor methods that are defined are callable directly.
> 2) Said methods are not reflected or revealed by the engine (stack 
> traces, reflection, etc would hide the engines implementation details)
> 
> I think that with the above, #1 makes it easy as no further changes are 
> required to make that happen, they're already directly callable and #2 
> jives with what *most userland programmers* would expect.
> 
> Anyone disagree?

Yes. I strongly disagree with adding any magic to the engine that messes
with reflection and backtraces and removes methods existing and being
called from it. I think no "userland" programmer would have any problem
understanding that these methods exist and how they work, just as nobody
has problem understanding how __get works. I think adding this magic
complicates both engine code (which will have to be supported for years
to come) and the language, without absolutely any benefit to anybody
except for imaginary people being scared to death by methods that they
themselves defined showing up in the backtrace.

-- 
Stanislav Malyshev, Software Architect
SugarCRM: http://www.sugarcrm.com/
(408)454-6900 ext. 227

-- 
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to