String >> withoutTrailing: probably makes sense but then this is mostly useful for line breaks⦠why not a #trimLinebreak
Set >> likeOrAdd: ok but then that should be available for any collection (and renamed addIfAbsent:) "Include newObject as one of the receiver's elements, but only if not already present. Answer the oldObject."
add: by convention returns the added object likeOrAdd: is primarily finding an existing object does addIfAbsent: communicate this sufficiently? Personally I think add: should return the object that is actually in the Set after the operation, whereas by default it returns the object that was potentially added.
ProtoObject >> iconOrThumbnailOfSize:
It is not useless, it enables the explorer to work with subclasses of ProtoObject, in particular MagmaProxy 's
Object >> askFor: and askFor:ifDefault: that's a workaround
Its implemented to primarily offer an alternative to adding #isThis #isThat methods to Object. Keith