This should be complete, now. I chopped out the bit in the draft about the API, so it has the ops, the vtable methods, and the examples. I expect it needs some work, so please, have at it and lets work out its deficiencies.
(Note that the reason for explicit attribute access, rather than using the P5["foo"] scheme, is that we may well have an object that acts like a hash or array, so we can't coopt the array/hash access method for attributes. But I digress, though I didn't explain properly earlier) -- Dan
--------------------------------------"it's like this"------------------- Dan Sugalski even samurai d...@sidhe.org have teddy bears and even teddy bears get drunk
Dan Sugalski wrote: > (Note that the reason for explicit attribute access, rather than using > the P5["foo"] scheme, is that we may well have an object that acts like > a hash or array, so we can't coopt the array/hash access method for > attributes. But I digress, though I didn't explain properly earlier)
Thought about that too and your argument is very reasonable. Does that also mean that we have no shortcuts for setting an attribute to a native item (set PObj["a"], 1) or is that just postponed? And what about named access of arguments, *if* I just done't care about speed? leo
>>(Note that the reason for explicit attribute access, rather than >>using the P5["foo"] scheme, is that we may well have an object that >>acts like a hash or array, so we can't coopt the array/hash access >>method for attributes. But I digress, though I didn't explain >>properly earlier)
>Thought about that too and your argument is very reasonable. Does >that also mean that we have no shortcuts for setting an attribute to >a native item (set PObj["a"], 1) or is that just postponed?
Postponed. While it'd be nice to not do it, as has been pointed out to me it allows for much tighter packing of things, so we'll do it eventually, just not now.
> And what about named access of arguments, *if* I just done't care >about speed?
I thought that was in the PDD, but I'll go double-check. I might've munched something inadvertently. If it's missing I'll add it back in, as being able to fetch by fully-qualified name is useful for introspective code. -- Dan
--------------------------------------"it's like this"------------------- Dan Sugalski even samurai d...@sidhe.org have teddy bears and even teddy bears get drunk
Tinderbox "aniani" is not working with the latest copy. I checked the other boxes and they seem fine.
Part of the log:
========================== about to cvs checkout parrot: /home/perlcvs: no such repository cvs checkout: authorization failed: server cvs.perl.org rejected access to /home/perlcvs for user anonymous cvs checkout: used empty password; try "cvs login" with a real password cvs checkout complete
About to run build command: perl Configure.pl --defaults Parrot Version 0.0.9 Configure 2.0 Copyright (C) 2001-2002 Yet Another Society ==========================
At 4:31 PM -0500 3/30/04, Abhijit A. Mahabal wrote:
>Tinderbox "aniani" is not working with the latest copy. I checked the >other boxes and they seem fine.
>Part of the log:
>========================== >about to cvs checkout parrot: >/home/perlcvs: no such repository
Ah, that's finally gone away. The repository path is /cvs/publoc. What you're using's very old, though there was a temporary symlink in for a while. -- Dan
--------------------------------------"it's like this"------------------- Dan Sugalski even samurai d...@sidhe.org have teddy bears and even teddy bears get drunk
> >about to cvs checkout parrot: > >/home/perlcvs: no such repository
> Ah, that's finally gone away. The repository path is /cvs/publoc. > What you're using's very old, though there was a temporary symlink in > for a while.