Andi Gutmans wrote:
At 06:55 PM 2/8/2002 +0900, Yasuo Ohgaki wrote:
Andi Gutmans wrote:
At 07:58 AM 2/7/2002 +0100, Stig S. Bakken wrote:
After careful consideration on the CS issue I must say I agree with John
here. The _only_ case where I feel CS is a problem, is when dealing
with other environments. But the price for changing this today is
simply too high. It should have been done in PHP 3.0. We have other BC
issues to soak our brains in.
Why not in PHP5? PHP5 breaks BC badly with new name space
support, anyway. Obviously, main concern for PHP5 is not
compatibility, not like PHP4. Right?
I still don't quite see why it breaks BC badly. It does not and no way near the case sensitive change.
Don't give me hypothetical examples of breakage but if you were to check how many scripts break because of name spaces and how many because of case sensitivity you'd see they aren't in the same league.
Andi
Name space BC problem is "bad", since script may misbehave
without proper error message where to fix.
It's a bad BC problem since it's harder to fix/notice.
In some cases, it seems works well while it's not.
The question is how often does this breakage actually happen in real life and not theoretically on the mailing list.
Andi
Case sensitive name is also "bad" since it will break
most scripts. However, it's reatively easy to fix/notice.
Both of them are "bad" BC problem.
For me, case sensitive name BC problem is better
than name space BC problem, since there will be
appropriate errors for BC problem.
It may not the case for others, though...
--
Yasuo Ohgaki
-------
Script as follows will be executed w/o any error
and gives totally wrong result.
This is really "bad" BC problem, is't this?
<?php
compute_rate() {
// do standard rate calc here
return $some_rate;
}
class A() {
function get_rate($is_class_specific_rate) {
if (%is_class_specific_rate) {
// compute class specific rate
return $this->compute_rate();
}
else {
// use standard rate function
return compute_rate();
}
}
function compute_rate() {
// do a little different rate calc here
return $some_rate;
}
}
?>
_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at
http://mail.yahoo.com