Hi Levente, You are right. This is a mistake. We should better adapt client projects.
We will remove it again. On 11 Jun 2010, at 16:40, Levente Uzonyi wrote: > On Fri, 11 Jun 2010, Marcus Denker wrote: > >> First update from the Brussels Sprint >> >> 11390 >> ----- >> >> Issue 2516: UTF16TextConverter broken in Pharo 1.1? >> Issue 2530: Morph duplicate failing >> Issue 2469: Debugger simulation problems >> Issue 2532: HashedCollection>>like: is missing > > According to the method comment, #like: was not ment to be sent to > dictionaries: > > "Answer an object in the receiver that is equal to anObject, > nil if no such object is found. Relies heavily on hash properties" > > What should happen when #like: is sent to a dictionary: > According to the comment the method should return an object in the receiver > or nil. If it's not nil then that should be an association (or any object in > case of MethodDictionary, but most likely a CompiledMethod). > The comment also says that the argument of the method has to be equal to the > returned object. This means that the argument has the be an association if > the dictionary is not a MethodDictionary. > > What's actually happening: > d := Dictionary new > at: #foo put: 1; > at: #bar put: 2; > yourself. > d like: #foo -> 1. "===> nil" "Oops" > d like: #foo. "===> #foo->1" "Oops" > d associationAt: #foo ifAbsent: nil. "===> #foo->1" > > Now with MethodDictionary: > d := Object methodDict. > d like: #yourself. "===> (Object>>#yourself ""a CompiledMethod(489160704)"")" > "Oops" > d like: Object >> #yourself. "===> nil" "Oops" > d associationAt: #yourself. "(Object>>#yourself ""a > CompiledMethod(489160704)"")" "Oops, it's a bug." > > So I think: > - MethodDictionary >> #associationAt:ifAbsent: should be fixed > - GOODS and Glorp implementations should use #associationAt:ifAbsent: instead > of #like: > - Dictionaries shouldn't understand #like: > > > Levente > >> >> >> -- >> Marcus Denker -- http://www.marcusdenker.de >> INRIA Lille -- Nord Europe. Team RMoD. >> >> >> _______________________________________________ >> Pharo-project mailing list >> [email protected] >> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project >> > > _______________________________________________ > Pharo-project mailing list > [email protected] > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project ---------------------------- Johan Brichau [email protected] _______________________________________________ Pharo-project mailing list [email protected] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
