On Fri, Mar 11, 2011 at 3:54 AM, Tassilo Horn <[email protected]> wrote:
> Ken Wesson <[email protected]> writes:
>
> Hi Ken & Alan,
>
>> Adding metadata to an object produces a new object, rather than
>> altering the existing object.  Every time you increment the counter
>> for a function in p it becomes different, and the memoize treats it as
>> new.
>
> Then I've misread that statement on the homepage:
>
>  An important thing to understand about metadata is that it is not
>  considered to be part of the value of an object. As such, metadata
>  does not impact equality (or hash codes). Two objects that differ only
>  in metadata are equal

Actually, that statement is itself a bit misleading and should be
clarified. Collections and other things with value-equality semantics
are equal if they only differ on metadata, but things like functions
that use object identity in the heap as their equality test are not.

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to [email protected]
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en

Reply via email to