D
Donkey Agony
Reading Gavin's post and Jim's blog article dropped a new metaphor
into my head, one that, the more I test it out, the more I like it.
I missed Jim's blog earlier, but I just read it now. Very interesting,
and it clued me in on some key points. But ... he lists three points:
points 1 and 2 are clear; point 3 flew right over my head:
<quote>
1. The distinction between immediate values (like Fixnum) and reference
values (most everything else) becomes invisible.
2. Multiple assignment statements (like 'a = b = "Hello"') is explained
in terms of binding the names 'a' and 'b' to the same object. No need to
talk about pointers or references.
3. Assignment becomes an operation that is outside an object. Objects
don't care what names they are bound to. Therefore binding is not an
operation on an object and won't ever be a method on an object. This
helps explain why "+=" is not a method and why "++" can't be implemented
as a method.
</quote>
In point 3, I don't understand the "therefore ...", nor do I understand
why += is not a method and ++ can't be implemented as one. (That seems
to mean that += *could* be one but for some good reason isn't?)