withAllSubclasses -> Set or OrderedCollection

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|

withAllSubclasses -> Set or OrderedCollection

Stéphane Ducasse
Nicolas I remember that we discussed this point or a related one a while ago

Squeak

        Point withAllSubclasses
                an OrderedCollection(Point)


Pharo

        Point withAllSubclasses
                a Set(Point)

Do you remember?
I forgot?

Stef






_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: withAllSubclasses -> Set or OrderedCollection

Nicolas Cellier
The single inheritance hierarchy is a Tree...
I don't see any interest in answering a Set.
Some tools might expect a Set...
If so, they just have to use withAllSubclasses asSet.

If my own tool expect a LinkedList, I ain't gonna change the Kernel
library for my conveniency, or am I ?

Nicolas

2010/2/23 Stéphane Ducasse <[hidden email]>:

> Nicolas I remember that we discussed this point or a related one a while ago
>
> Squeak
>
>        Point withAllSubclasses
>                an OrderedCollection(Point)
>
>
> Pharo
>
>        Point withAllSubclasses
>                a Set(Point)
>
> Do you remember?
> I forgot?
>
> Stef
>
>
>
>
>
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: withAllSubclasses -> Set or OrderedCollection

Stéphane Ducasse
this was not really my question :) I know that a tree does not twice the same node
do you know when it changed in squeak or pharo and the reason?

Stef

On Feb 23, 2010, at 11:02 PM, Nicolas Cellier wrote:

> The single inheritance hierarchy is a Tree...
> I don't see any interest in answering a Set.
> Some tools might expect a Set...
> If so, they just have to use withAllSubclasses asSet.
>
> If my own tool expect a LinkedList, I ain't gonna change the Kernel
> library for my conveniency, or am I ?
>
> Nicolas
>
> 2010/2/23 Stéphane Ducasse <[hidden email]>:
>> Nicolas I remember that we discussed this point or a related one a while ago
>>
>> Squeak
>>
>>        Point withAllSubclasses
>>                an OrderedCollection(Point)
>>
>>
>> Pharo
>>
>>        Point withAllSubclasses
>>                a Set(Point)
>>
>> Do you remember?
>> I forgot?
>>
>> Stef
>>
>>
>>
>>
>>
>>
>> _______________________________________________
>> Pharo-project mailing list
>> [hidden email]
>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: withAllSubclasses -> Set or OrderedCollection

Nicolas Cellier
2010/2/24 Stéphane Ducasse <[hidden email]>:
> this was not really my question :) I know that a tree does not twice the same node
> do you know when it changed in squeak or pharo and the reason?
>
> Stef

I return the question: so why answer a Set ?
For multiple inheritance experiments or for some tools conveniency ?

Nicolas

>
> On Feb 23, 2010, at 11:02 PM, Nicolas Cellier wrote:
>
>> The single inheritance hierarchy is a Tree...
>> I don't see any interest in answering a Set.
>> Some tools might expect a Set...
>> If so, they just have to use withAllSubclasses asSet.
>>
>> If my own tool expect a LinkedList, I ain't gonna change the Kernel
>> library for my conveniency, or am I ?
>>
>> Nicolas
>>
>> 2010/2/23 Stéphane Ducasse <[hidden email]>:
>>> Nicolas I remember that we discussed this point or a related one a while ago
>>>
>>> Squeak
>>>
>>>        Point withAllSubclasses
>>>                an OrderedCollection(Point)
>>>
>>>
>>> Pharo
>>>
>>>        Point withAllSubclasses
>>>                a Set(Point)
>>>
>>> Do you remember?
>>> I forgot?
>>>
>>> Stef
>>>
>>>
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> Pharo-project mailing list
>>> [hidden email]
>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>
>>
>> _______________________________________________
>> Pharo-project mailing list
>> [hidden email]
>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: withAllSubclasses -> Set or OrderedCollection

Stéphane Ducasse
Since this is obvious that in a tree you do not get twice the same node
I was wondering why in the first place a set was returned.
So apparently I'm not the only to not know and I was then curious about the
impact of the changes.
I was more interested in the impact of the changes that its justification :)

http://code.google.com/p/pharo/issues/detail?id=2071

Stef

On Feb 24, 2010, at 9:33 AM, Nicolas Cellier wrote:

> 2010/2/24 Stéphane Ducasse <[hidden email]>:
>> this was not really my question :) I know that a tree does not twice the same node
>> do you know when it changed in squeak or pharo and the reason?
>>
>> Stef
>
> I return the question: so why answer a Set ?
> For multiple inheritance experiments or for some tools conveniency ?
>
> Nicolas
>
>>
>> On Feb 23, 2010, at 11:02 PM, Nicolas Cellier wrote:
>>
>>> The single inheritance hierarchy is a Tree...
>>> I don't see any interest in answering a Set.
>>> Some tools might expect a Set...
>>> If so, they just have to use withAllSubclasses asSet.
>>>
>>> If my own tool expect a LinkedList, I ain't gonna change the Kernel
>>> library for my conveniency, or am I ?
>>>
>>> Nicolas
>>>
>>> 2010/2/23 Stéphane Ducasse <[hidden email]>:
>>>> Nicolas I remember that we discussed this point or a related one a while ago
>>>>
>>>> Squeak
>>>>
>>>>        Point withAllSubclasses
>>>>                an OrderedCollection(Point)
>>>>
>>>>
>>>> Pharo
>>>>
>>>>        Point withAllSubclasses
>>>>                a Set(Point)
>>>>
>>>> Do you remember?
>>>> I forgot?
>>>>
>>>> Stef
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> Pharo-project mailing list
>>>> [hidden email]
>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>
>>>
>>> _______________________________________________
>>> Pharo-project mailing list
>>> [hidden email]
>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>
>>
>> _______________________________________________
>> Pharo-project mailing list
>> [hidden email]
>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: withAllSubclasses -> Set or OrderedCollection

Nicolas Cellier
The impact is:
- breaking some tools (easy to fix with asSet) I can't tell you
which... I saw an update recently related to this change.
- speeding up some other tools (unecessary asSet is unecessary cost)
- increasing Kernel consistency (selectors, instVarNames,
classVarNames don't return a Set).

The speed-up gained by eliminating all these useless Set is visible in the IDE.

Nicolas

2010/2/24 Stéphane Ducasse <[hidden email]>:

> Since this is obvious that in a tree you do not get twice the same node
> I was wondering why in the first place a set was returned.
> So apparently I'm not the only to not know and I was then curious about the
> impact of the changes.
> I was more interested in the impact of the changes that its justification :)
>
> http://code.google.com/p/pharo/issues/detail?id=2071
>
> Stef
>
> On Feb 24, 2010, at 9:33 AM, Nicolas Cellier wrote:
>
>> 2010/2/24 Stéphane Ducasse <[hidden email]>:
>>> this was not really my question :) I know that a tree does not twice the same node
>>> do you know when it changed in squeak or pharo and the reason?
>>>
>>> Stef
>>
>> I return the question: so why answer a Set ?
>> For multiple inheritance experiments or for some tools conveniency ?
>>
>> Nicolas
>>
>>>
>>> On Feb 23, 2010, at 11:02 PM, Nicolas Cellier wrote:
>>>
>>>> The single inheritance hierarchy is a Tree...
>>>> I don't see any interest in answering a Set.
>>>> Some tools might expect a Set...
>>>> If so, they just have to use withAllSubclasses asSet.
>>>>
>>>> If my own tool expect a LinkedList, I ain't gonna change the Kernel
>>>> library for my conveniency, or am I ?
>>>>
>>>> Nicolas
>>>>
>>>> 2010/2/23 Stéphane Ducasse <[hidden email]>:
>>>>> Nicolas I remember that we discussed this point or a related one a while ago
>>>>>
>>>>> Squeak
>>>>>
>>>>>        Point withAllSubclasses
>>>>>                an OrderedCollection(Point)
>>>>>
>>>>>
>>>>> Pharo
>>>>>
>>>>>        Point withAllSubclasses
>>>>>                a Set(Point)
>>>>>
>>>>> Do you remember?
>>>>> I forgot?
>>>>>
>>>>> Stef
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Pharo-project mailing list
>>>>> [hidden email]
>>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>>
>>>>
>>>> _______________________________________________
>>>> Pharo-project mailing list
>>>> [hidden email]
>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>
>>>
>>> _______________________________________________
>>> Pharo-project mailing list
>>> [hidden email]
>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>
>>
>> _______________________________________________
>> Pharo-project mailing list
>> [hidden email]
>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: withAllSubclasses -> Set or OrderedCollection

Nicolas Cellier
Ah, I just found this starting point:

http://lists.squeakfoundation.org/pipermail/squeak-dev/2010-January/143063.html

2010/2/24 Nicolas Cellier <[hidden email]>:

> The impact is:
> - breaking some tools (easy to fix with asSet) I can't tell you
> which... I saw an update recently related to this change.
> - speeding up some other tools (unecessary asSet is unecessary cost)
> - increasing Kernel consistency (selectors, instVarNames,
> classVarNames don't return a Set).
>
> The speed-up gained by eliminating all these useless Set is visible in the IDE.
>
> Nicolas
>
> 2010/2/24 Stéphane Ducasse <[hidden email]>:
>> Since this is obvious that in a tree you do not get twice the same node
>> I was wondering why in the first place a set was returned.
>> So apparently I'm not the only to not know and I was then curious about the
>> impact of the changes.
>> I was more interested in the impact of the changes that its justification :)
>>
>> http://code.google.com/p/pharo/issues/detail?id=2071
>>
>> Stef
>>
>> On Feb 24, 2010, at 9:33 AM, Nicolas Cellier wrote:
>>
>>> 2010/2/24 Stéphane Ducasse <[hidden email]>:
>>>> this was not really my question :) I know that a tree does not twice the same node
>>>> do you know when it changed in squeak or pharo and the reason?
>>>>
>>>> Stef
>>>
>>> I return the question: so why answer a Set ?
>>> For multiple inheritance experiments or for some tools conveniency ?
>>>
>>> Nicolas
>>>
>>>>
>>>> On Feb 23, 2010, at 11:02 PM, Nicolas Cellier wrote:
>>>>
>>>>> The single inheritance hierarchy is a Tree...
>>>>> I don't see any interest in answering a Set.
>>>>> Some tools might expect a Set...
>>>>> If so, they just have to use withAllSubclasses asSet.
>>>>>
>>>>> If my own tool expect a LinkedList, I ain't gonna change the Kernel
>>>>> library for my conveniency, or am I ?
>>>>>
>>>>> Nicolas
>>>>>
>>>>> 2010/2/23 Stéphane Ducasse <[hidden email]>:
>>>>>> Nicolas I remember that we discussed this point or a related one a while ago
>>>>>>
>>>>>> Squeak
>>>>>>
>>>>>>        Point withAllSubclasses
>>>>>>                an OrderedCollection(Point)
>>>>>>
>>>>>>
>>>>>> Pharo
>>>>>>
>>>>>>        Point withAllSubclasses
>>>>>>                a Set(Point)
>>>>>>
>>>>>> Do you remember?
>>>>>> I forgot?
>>>>>>
>>>>>> Stef
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> Pharo-project mailing list
>>>>>> [hidden email]
>>>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Pharo-project mailing list
>>>>> [hidden email]
>>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>
>>>>
>>>> _______________________________________________
>>>> Pharo-project mailing list
>>>> [hidden email]
>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>
>>>
>>> _______________________________________________
>>> Pharo-project mailing list
>>> [hidden email]
>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>
>>
>> _______________________________________________
>> Pharo-project mailing list
>> [hidden email]
>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>
>

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: withAllSubclasses -> Set or OrderedCollection

Stéphane Ducasse
In reply to this post by Nicolas Cellier
Excellent so we will do it.
Tx
stef

On Feb 24, 2010, at 2:16 PM, Nicolas Cellier wrote:

> The impact is:
> - breaking some tools (easy to fix with asSet) I can't tell you
> which... I saw an update recently related to this change.
> - speeding up some other tools (unecessary asSet is unecessary cost)
> - increasing Kernel consistency (selectors, instVarNames,
> classVarNames don't return a Set).
>
> The speed-up gained by eliminating all these useless Set is visible in the IDE.
>
> Nicolas
>
> 2010/2/24 Stéphane Ducasse <[hidden email]>:
>> Since this is obvious that in a tree you do not get twice the same node
>> I was wondering why in the first place a set was returned.
>> So apparently I'm not the only to not know and I was then curious about the
>> impact of the changes.
>> I was more interested in the impact of the changes that its justification :)
>>
>> http://code.google.com/p/pharo/issues/detail?id=2071
>>
>> Stef
>>
>> On Feb 24, 2010, at 9:33 AM, Nicolas Cellier wrote:
>>
>>> 2010/2/24 Stéphane Ducasse <[hidden email]>:
>>>> this was not really my question :) I know that a tree does not twice the same node
>>>> do you know when it changed in squeak or pharo and the reason?
>>>>
>>>> Stef
>>>
>>> I return the question: so why answer a Set ?
>>> For multiple inheritance experiments or for some tools conveniency ?
>>>
>>> Nicolas
>>>
>>>>
>>>> On Feb 23, 2010, at 11:02 PM, Nicolas Cellier wrote:
>>>>
>>>>> The single inheritance hierarchy is a Tree...
>>>>> I don't see any interest in answering a Set.
>>>>> Some tools might expect a Set...
>>>>> If so, they just have to use withAllSubclasses asSet.
>>>>>
>>>>> If my own tool expect a LinkedList, I ain't gonna change the Kernel
>>>>> library for my conveniency, or am I ?
>>>>>
>>>>> Nicolas
>>>>>
>>>>> 2010/2/23 Stéphane Ducasse <[hidden email]>:
>>>>>> Nicolas I remember that we discussed this point or a related one a while ago
>>>>>>
>>>>>> Squeak
>>>>>>
>>>>>>        Point withAllSubclasses
>>>>>>                an OrderedCollection(Point)
>>>>>>
>>>>>>
>>>>>> Pharo
>>>>>>
>>>>>>        Point withAllSubclasses
>>>>>>                a Set(Point)
>>>>>>
>>>>>> Do you remember?
>>>>>> I forgot?
>>>>>>
>>>>>> Stef
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> Pharo-project mailing list
>>>>>> [hidden email]
>>>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Pharo-project mailing list
>>>>> [hidden email]
>>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>
>>>>
>>>> _______________________________________________
>>>> Pharo-project mailing list
>>>> [hidden email]
>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>
>>>
>>> _______________________________________________
>>> Pharo-project mailing list
>>> [hidden email]
>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>
>>
>> _______________________________________________
>> Pharo-project mailing list
>> [hidden email]
>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: withAllSubclasses -> Set or OrderedCollection

Stéphane Ducasse
In reply to this post by Nicolas Cellier
tx

since we are in unstable we can go full speed.

Stef

On Feb 24, 2010, at 2:21 PM, Nicolas Cellier wrote:

> Ah, I just found this starting point:
>
> http://lists.squeakfoundation.org/pipermail/squeak-dev/2010-January/143063.html
>
> 2010/2/24 Nicolas Cellier <[hidden email]>:
>> The impact is:
>> - breaking some tools (easy to fix with asSet) I can't tell you
>> which... I saw an update recently related to this change.
>> - speeding up some other tools (unecessary asSet is unecessary cost)
>> - increasing Kernel consistency (selectors, instVarNames,
>> classVarNames don't return a Set).
>>
>> The speed-up gained by eliminating all these useless Set is visible in the IDE.
>>
>> Nicolas
>>
>> 2010/2/24 Stéphane Ducasse <[hidden email]>:
>>> Since this is obvious that in a tree you do not get twice the same node
>>> I was wondering why in the first place a set was returned.
>>> So apparently I'm not the only to not know and I was then curious about the
>>> impact of the changes.
>>> I was more interested in the impact of the changes that its justification :)
>>>
>>> http://code.google.com/p/pharo/issues/detail?id=2071
>>>
>>> Stef
>>>
>>> On Feb 24, 2010, at 9:33 AM, Nicolas Cellier wrote:
>>>
>>>> 2010/2/24 Stéphane Ducasse <[hidden email]>:
>>>>> this was not really my question :) I know that a tree does not twice the same node
>>>>> do you know when it changed in squeak or pharo and the reason?
>>>>>
>>>>> Stef
>>>>
>>>> I return the question: so why answer a Set ?
>>>> For multiple inheritance experiments or for some tools conveniency ?
>>>>
>>>> Nicolas
>>>>
>>>>>
>>>>> On Feb 23, 2010, at 11:02 PM, Nicolas Cellier wrote:
>>>>>
>>>>>> The single inheritance hierarchy is a Tree...
>>>>>> I don't see any interest in answering a Set.
>>>>>> Some tools might expect a Set...
>>>>>> If so, they just have to use withAllSubclasses asSet.
>>>>>>
>>>>>> If my own tool expect a LinkedList, I ain't gonna change the Kernel
>>>>>> library for my conveniency, or am I ?
>>>>>>
>>>>>> Nicolas
>>>>>>
>>>>>> 2010/2/23 Stéphane Ducasse <[hidden email]>:
>>>>>>> Nicolas I remember that we discussed this point or a related one a while ago
>>>>>>>
>>>>>>> Squeak
>>>>>>>
>>>>>>>        Point withAllSubclasses
>>>>>>>                an OrderedCollection(Point)
>>>>>>>
>>>>>>>
>>>>>>> Pharo
>>>>>>>
>>>>>>>        Point withAllSubclasses
>>>>>>>                a Set(Point)
>>>>>>>
>>>>>>> Do you remember?
>>>>>>> I forgot?
>>>>>>>
>>>>>>> Stef
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> Pharo-project mailing list
>>>>>>> [hidden email]
>>>>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> Pharo-project mailing list
>>>>>> [hidden email]
>>>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Pharo-project mailing list
>>>>> [hidden email]
>>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>>
>>>>
>>>> _______________________________________________
>>>> Pharo-project mailing list
>>>> [hidden email]
>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>
>>>
>>> _______________________________________________
>>> Pharo-project mailing list
>>> [hidden email]
>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>
>>
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project