in reply to Re: This could have DWIM better
in thread This could have DWIM better
This should print 6 whether length is overridden or not, but as is prints 3 when it is overridden.$ perl5.9.4 -w BEGIN{ *CORE::GLOBAL::length = sub (;$) { my $arg = @_ ? $_[0] : $_; defined($arg) ? CORE::length($arg) : undef; } } $_ = "abc"; my $_; $_ = "defghi"; print length; __END__ 3
Update: after consideration, I think this is just a natural consequence of the ;$ prototype, and should be no longer a problem with a _ prototype (when someone implements that).
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^3: This could have DWIM better
by japhy (Canon) on Mar 02, 2006 at 14:52 UTC | |
by ysth (Canon) on Mar 02, 2006 at 18:51 UTC |