Gs doesn't have the problems common in 32-bit versions of other dialects related to collisions from short #identityHash range. I recall the 32-bit version of VisualWorks answered a 16k value range and that caused huge performance problems for large identity hashed collections. A 4k range must have been a nightmare. Even 32-bit versions of Gs do well with extremely large collections.
Paul Baumann
I am sure the answer is dumb, but I still wonder. At a first glance I thought it could be because you may reuse OOPs. But...if you re-use a OOP is because that object is not anywhere in the system (and hence, there is no need of re-hash any collection).Another thought I had is none-persisting object and the costs of getting available OOPs vs a simply #identityHash implementation.BTW how long is the #identityHash? In Pharo (before Spur) we had 12 bits (or similar) in the object header so that yield 4k different values. That's not fun when you have large identity-based hashed collection because of collisions. Anyway, how big is the identity hash in Gemstone? Or how "unique" it is?Anyway, I was simply curious about this topic and would like you know your thoughts.
_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass
Free forum by Nabble | Edit this page |