On 12/12/02 12:55 PM, Larry Wall wrote:
> As for namespace pollution and classes that use .id in Perl 5, I
> don't think it's going to be a big problem.  Built-in identifiers
> do not have a required prefix, but they have an optional prefix,
> which is C<*>.  I think we can probably parse
> 
>   $a.*id == $b.*id
> 
> if you really need to get to Object.id().

That'll only work out if everyone always writes it as "*id".  If not, my
Perl 6 objects that override "id()" won't work correctly with any other
classes or functions that simply call "id" and expect it to really be "*id"

But I suspect the reverse will happen.  Everyone will just expect $a.id to
be functionally the same as $a.*id, so no one will actually ever write
$a.*id.  And so I'm back to losing the ability to have "id" attributes on
objects in Perl 6 that represent anything other than "a place in memory",
and back to my complaint about a "system method" hogging a common (IME) and
sensible method name for many kinds of objects, using it to store
information that is very infrequently accessed.

Is one extra letter going to kill anyone?  .uid?  .oid?  C'mon, throw me a
bone here... :-}

-John

Reply via email to