Stanislav Malyshev wrote: >> AIUI, this RFC is meant to introduce some sugar only. Wouldn't it be > > I'm not sure what you mean by "some sugar only". It introduces the > capability of using objects in array key context, which was not > available until now.
Yes, but it is already possible to call an object's method in array key context, so in combination with an appropriate interface the same can be accomplished. >> possible to have object hashes without __hash(), by introducing a >> respective interface (maybe "Hashable" or "Identifiable") and requiring >> the appropriate classes to implement this interface? > > It's possible and essentially the same, replacing magic method (which is > how things were done in PHP since forever until now) with interface - > which probably would be slower to check, would still require dedicated > method name, probably starting with __, and will essentially do the same. I didn't mean to argue against the RFC, but merely wanted to point out that one could have object hashes without the proposed magic method (albeit in a more contrived way). Frankly, I don't understand Guilherme's claim: | With this enhancement it would now become possible to implement a | proper IdentityMap. It seems to me that is already possible since PHP 5.0.0. I may be missing an important detail, though. BTW: as a userland developer I would not have called the dedicated method __X, because __* is reserved for PHP's internal usage, AIUI. -- Christoph M. Becker -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php