about and:and: and and:

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

about and:and: and and:

Stéphane Ducasse
hi nicolas

I saw that you apply some automatic refactoring in squeak about and:and: -> and:
and I wanted to know. Is and: more optimized than and:and: (I imagine that) but I would like
to know for sure.

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: about and:and: and and:

Lukas Renggli
The NewCompiler optimizes #and:and:and: to an optimized and nested
#and:. The standard compiler does a normal message send with block
activations for each condition and thus is dead slow.

Lukas

2010/1/4 Stéphane Ducasse <[hidden email]>:

> hi nicolas
>
> I saw that you apply some automatic refactoring in squeak about and:and: -> and:
> and I wanted to know. Is and: more optimized than and:and: (I imagine that) but I would like
> to know for sure.
>
> Stef
>
>
>
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>



--
Lukas Renggli
http://www.lukas-renggli.ch

_______________________________________________
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: about and:and: and and:

Nicolas Cellier
My point was:
- these messages are Squeak specific
- they are slow (didn't knew about NewCompiler...)
- do they really add some value over nested and: ?

Nicolas

2010/1/4 Lukas Renggli <[hidden email]>:

> The NewCompiler optimizes #and:and:and: to an optimized and nested
> #and:. The standard compiler does a normal message send with block
> activations for each condition and thus is dead slow.
>
> Lukas
>
> 2010/1/4 Stéphane Ducasse <[hidden email]>:
>> hi nicolas
>>
>> I saw that you apply some automatic refactoring in squeak about and:and: -> and:
>> and I wanted to know. Is and: more optimized than and:and: (I imagine that) but I would like
>> to know for sure.
>>
>> Stef
>>
>>
>>
>>
>> _______________________________________________
>> Pharo-project mailing list
>> [hidden email]
>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>
>
>
>
> --
> Lukas Renggli
> http://www.lukas-renggli.ch
>
> _______________________________________________
> 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: about and:and: and and:

Stéphane Ducasse
In reply to this post by Lukas Renggli
Thanks lukas
so we could get rid of them :)

Stef

On Jan 4, 2010, at 9:12 AM, Lukas Renggli wrote:

> The NewCompiler optimizes #and:and:and: to an optimized and nested
> #and:. The standard compiler does a normal message send with block
> activations for each condition and thus is dead slow.
>
> Lukas
>
> 2010/1/4 Stéphane Ducasse <[hidden email]>:
>> hi nicolas
>>
>> I saw that you apply some automatic refactoring in squeak about and:and: -> and:
>> and I wanted to know. Is and: more optimized than and:and: (I imagine that) but I would like
>> to know for sure.
>>
>> Stef
>>
>>
>>
>>
>> _______________________________________________
>> Pharo-project mailing list
>> [hidden email]
>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>
>
>
>
> --
> Lukas Renggli
> http://www.lukas-renggli.ch
>
> _______________________________________________
> 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: about and:and: and and:

Stéphane Ducasse
In reply to this post by Nicolas Cellier
Nicolas
I would love to get the latest version cleanup automatically
If by accident a huge slice would be committed into the pharoInbox.
what the others think?

Stef

On Jan 4, 2010, at 9:26 AM, Nicolas Cellier wrote:

> My point was:
> - these messages are Squeak specific
> - they are slow (didn't knew about NewCompiler...)
> - do they really add some value over nested and: ?
>
> Nicolas
>
> 2010/1/4 Lukas Renggli <[hidden email]>:
>> The NewCompiler optimizes #and:and:and: to an optimized and nested
>> #and:. The standard compiler does a normal message send with block
>> activations for each condition and thus is dead slow.
>>
>> Lukas
>>
>> 2010/1/4 Stéphane Ducasse <[hidden email]>:
>>> hi nicolas
>>>
>>> I saw that you apply some automatic refactoring in squeak about and:and: -> and:
>>> and I wanted to know. Is and: more optimized than and:and: (I imagine that) but I would like
>>> to know for sure.
>>>
>>> Stef
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> Pharo-project mailing list
>>> [hidden email]
>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>
>>
>>
>>
>> --
>> Lukas Renggli
>> http://www.lukas-renggli.ch
>>
>> _______________________________________________
>> 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: about and:and: and and:

Lukas Renggli
From Slime:

RBParseTreeRewriter new
        replace: '``@expr1 and: [ | `@temp2 | ``@expr2 ] and: [ | `@temp3 | ``@expr3 ]'
                        with: '``@expr1 and: [ | `@temp2 | ``@expr2 and: [ | `@temp3 | ``@expr3 ] ]';
                replace: '``@expr1 and: [ | `@temp2 | ``@expr2 ] and: [ | `@temp3 |
``@expr3 ] and: [ | `@temp4 | ``@expr4 ]'
                        with: '``@expr1 and: [ | `@temp2 | ``@expr2 and: [ | `@temp3 |
``@expr3 and: [ | `@temp4 | ``@expr4 ] ] ]';
                replace: '``@expr1 and: [ | `@temp2 | ``@expr2 ] and: [ | `@temp3 |
``@expr3 ] and: [ | `@temp4 | ``@expr4 ] and: [  | `@temp5 | ``@expr5
]'
                        with: '``@expr1 and: [ | `@temp2 | ``@expr2 and: [ | `@temp3 |
``@expr3 and: [ | `@temp4 | ``@expr4 and: [ | `@temp5 | ``@expr5 ] ] ]
]';
                replace: '``@expr1 or: [ | `@temp2 | ``@expr2 ] or: [ | `@temp3 | ``@expr3 ]'
                        with: '``@expr1 or: [ | `@temp2 | ``@expr2 or: [ | `@temp3 | ``@expr3 ] ]';
                replace: '``@expr1 or: [ | `@temp2 | ``@expr2 ] or: [ | `@temp3 |
``@expr3 ] or: [ | `@temp4 | ``@expr4 ]'
                        with: '``@expr1 or: [ | `@temp2 | ``@expr2 or: [ | `@temp3 |
``@expr3 or: [ | `@temp4 | ``@expr4 ] ] ]';
                replace: '``@expr1 or: [ | `@temp2 | ``@expr2 ] or: [ | `@temp3 |
``@expr3 ] or: [ | `@temp4 | ``@expr4 ] or: [ | `@temp5 | ``@expr5 ]'
                        with: '``@expr1 or: [ | `@temp2 | ``@expr2 or: [ | `@temp3 |
``@expr3 or: [ | `@temp4 | ``@expr4 or: [ | `@temp5 | ``@expr5 ] ] ]
]';
                replace: '``@expr1 or: [ | `@temp2 | ``@expr2 ] or: [ | `@temp3 |
``@expr3 ] or: [ | `@temp4 | ``@expr4 ] or: [ | `@temp5 | ``@expr5 ]
or: [ | `@temp6 | ``@expr6 ]'
                        with: '``@expr1 or: [ | `@temp2 | ``@expr2 or: [ | `@temp3 |
``@expr3 or: [ | `@temp4 | ``@expr4 or: [ | `@temp5 | ``@expr5 or: [ |
`@temp6 | ``@expr6 ] ] ] ] ]';
                yourself

2010/1/4 Stéphane Ducasse <[hidden email]>:

> Nicolas
> I would love to get the latest version cleanup automatically
> If by accident a huge slice would be committed into the pharoInbox.
> what the others think?
>
> Stef
>
> On Jan 4, 2010, at 9:26 AM, Nicolas Cellier wrote:
>
>> My point was:
>> - these messages are Squeak specific
>> - they are slow (didn't knew about NewCompiler...)
>> - do they really add some value over nested and: ?
>>
>> Nicolas
>>
>> 2010/1/4 Lukas Renggli <[hidden email]>:
>>> The NewCompiler optimizes #and:and:and: to an optimized and nested
>>> #and:. The standard compiler does a normal message send with block
>>> activations for each condition and thus is dead slow.
>>>
>>> Lukas
>>>
>>> 2010/1/4 Stéphane Ducasse <[hidden email]>:
>>>> hi nicolas
>>>>
>>>> I saw that you apply some automatic refactoring in squeak about and:and: -> and:
>>>> and I wanted to know. Is and: more optimized than and:and: (I imagine that) but I would like
>>>> to know for sure.
>>>>
>>>> Stef
>>>>
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> Pharo-project mailing list
>>>> [hidden email]
>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>
>>>
>>>
>>>
>>> --
>>> Lukas Renggli
>>> http://www.lukas-renggli.ch
>>>
>>> _______________________________________________
>>> 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
>



--
Lukas Renggli
http://www.lukas-renggli.ch

_______________________________________________
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: about and:and: and and:

Nicolas Cellier
If this preserves formatting, proceed, else, beware.
Given there were few senders in trunk, my change was manual, not
automatic (Steph didn't you mean systematic ?).

Nicolas

2010/1/4 Lukas Renggli <[hidden email]>:

> From Slime:
>
> RBParseTreeRewriter new
>        replace: '``@expr1 and: [ | `@temp2 | ``@expr2 ] and: [ | `@temp3 | ``@expr3 ]'
>                        with: '``@expr1 and: [ | `@temp2 | ``@expr2 and: [ | `@temp3 | ``@expr3 ] ]';
>                replace: '``@expr1 and: [ | `@temp2 | ``@expr2 ] and: [ | `@temp3 |
> ``@expr3 ] and: [ | `@temp4 | ``@expr4 ]'
>                        with: '``@expr1 and: [ | `@temp2 | ``@expr2 and: [ | `@temp3 |
> ``@expr3 and: [ | `@temp4 | ``@expr4 ] ] ]';
>                replace: '``@expr1 and: [ | `@temp2 | ``@expr2 ] and: [ | `@temp3 |
> ``@expr3 ] and: [ | `@temp4 | ``@expr4 ] and: [  | `@temp5 | ``@expr5
> ]'
>                        with: '``@expr1 and: [ | `@temp2 | ``@expr2 and: [ | `@temp3 |
> ``@expr3 and: [ | `@temp4 | ``@expr4 and: [ | `@temp5 | ``@expr5 ] ] ]
> ]';
>                replace: '``@expr1 or: [ | `@temp2 | ``@expr2 ] or: [ | `@temp3 | ``@expr3 ]'
>                        with: '``@expr1 or: [ | `@temp2 | ``@expr2 or: [ | `@temp3 | ``@expr3 ] ]';
>                replace: '``@expr1 or: [ | `@temp2 | ``@expr2 ] or: [ | `@temp3 |
> ``@expr3 ] or: [ | `@temp4 | ``@expr4 ]'
>                        with: '``@expr1 or: [ | `@temp2 | ``@expr2 or: [ | `@temp3 |
> ``@expr3 or: [ | `@temp4 | ``@expr4 ] ] ]';
>                replace: '``@expr1 or: [ | `@temp2 | ``@expr2 ] or: [ | `@temp3 |
> ``@expr3 ] or: [ | `@temp4 | ``@expr4 ] or: [ | `@temp5 | ``@expr5 ]'
>                        with: '``@expr1 or: [ | `@temp2 | ``@expr2 or: [ | `@temp3 |
> ``@expr3 or: [ | `@temp4 | ``@expr4 or: [ | `@temp5 | ``@expr5 ] ] ]
> ]';
>                replace: '``@expr1 or: [ | `@temp2 | ``@expr2 ] or: [ | `@temp3 |
> ``@expr3 ] or: [ | `@temp4 | ``@expr4 ] or: [ | `@temp5 | ``@expr5 ]
> or: [ | `@temp6 | ``@expr6 ]'
>                        with: '``@expr1 or: [ | `@temp2 | ``@expr2 or: [ | `@temp3 |
> ``@expr3 or: [ | `@temp4 | ``@expr4 or: [ | `@temp5 | ``@expr5 or: [ |
> `@temp6 | ``@expr6 ] ] ] ] ]';
>                yourself
>
> 2010/1/4 Stéphane Ducasse <[hidden email]>:
>> Nicolas
>> I would love to get the latest version cleanup automatically
>> If by accident a huge slice would be committed into the pharoInbox.
>> what the others think?
>>
>> Stef
>>
>> On Jan 4, 2010, at 9:26 AM, Nicolas Cellier wrote:
>>
>>> My point was:
>>> - these messages are Squeak specific
>>> - they are slow (didn't knew about NewCompiler...)
>>> - do they really add some value over nested and: ?
>>>
>>> Nicolas
>>>
>>> 2010/1/4 Lukas Renggli <[hidden email]>:
>>>> The NewCompiler optimizes #and:and:and: to an optimized and nested
>>>> #and:. The standard compiler does a normal message send with block
>>>> activations for each condition and thus is dead slow.
>>>>
>>>> Lukas
>>>>
>>>> 2010/1/4 Stéphane Ducasse <[hidden email]>:
>>>>> hi nicolas
>>>>>
>>>>> I saw that you apply some automatic refactoring in squeak about and:and: -> and:
>>>>> and I wanted to know. Is and: more optimized than and:and: (I imagine that) but I would like
>>>>> to know for sure.
>>>>>
>>>>> Stef
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Pharo-project mailing list
>>>>> [hidden email]
>>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Lukas Renggli
>>>> http://www.lukas-renggli.ch
>>>>
>>>> _______________________________________________
>>>> 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
>>
>
>
>
> --
> Lukas Renggli
> http://www.lukas-renggli.ch
>
> _______________________________________________
> 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: about and:and: and and:

Lukas Renggli
This very likely does not preserve the formatting. The rewrite
completely restructures the AST.

Lukas

2010/1/4 Nicolas Cellier <[hidden email]>:

> If this preserves formatting, proceed, else, beware.
> Given there were few senders in trunk, my change was manual, not
> automatic (Steph didn't you mean systematic ?).
>
> Nicolas
>
> 2010/1/4 Lukas Renggli <[hidden email]>:
>> From Slime:
>>
>> RBParseTreeRewriter new
>>        replace: '``@expr1 and: [ | `@temp2 | ``@expr2 ] and: [ | `@temp3 | ``@expr3 ]'
>>                        with: '``@expr1 and: [ | `@temp2 | ``@expr2 and: [ | `@temp3 | ``@expr3 ] ]';
>>                replace: '``@expr1 and: [ | `@temp2 | ``@expr2 ] and: [ | `@temp3 |
>> ``@expr3 ] and: [ | `@temp4 | ``@expr4 ]'
>>                        with: '``@expr1 and: [ | `@temp2 | ``@expr2 and: [ | `@temp3 |
>> ``@expr3 and: [ | `@temp4 | ``@expr4 ] ] ]';
>>                replace: '``@expr1 and: [ | `@temp2 | ``@expr2 ] and: [ | `@temp3 |
>> ``@expr3 ] and: [ | `@temp4 | ``@expr4 ] and: [  | `@temp5 | ``@expr5
>> ]'
>>                        with: '``@expr1 and: [ | `@temp2 | ``@expr2 and: [ | `@temp3 |
>> ``@expr3 and: [ | `@temp4 | ``@expr4 and: [ | `@temp5 | ``@expr5 ] ] ]
>> ]';
>>                replace: '``@expr1 or: [ | `@temp2 | ``@expr2 ] or: [ | `@temp3 | ``@expr3 ]'
>>                        with: '``@expr1 or: [ | `@temp2 | ``@expr2 or: [ | `@temp3 | ``@expr3 ] ]';
>>                replace: '``@expr1 or: [ | `@temp2 | ``@expr2 ] or: [ | `@temp3 |
>> ``@expr3 ] or: [ | `@temp4 | ``@expr4 ]'
>>                        with: '``@expr1 or: [ | `@temp2 | ``@expr2 or: [ | `@temp3 |
>> ``@expr3 or: [ | `@temp4 | ``@expr4 ] ] ]';
>>                replace: '``@expr1 or: [ | `@temp2 | ``@expr2 ] or: [ | `@temp3 |
>> ``@expr3 ] or: [ | `@temp4 | ``@expr4 ] or: [ | `@temp5 | ``@expr5 ]'
>>                        with: '``@expr1 or: [ | `@temp2 | ``@expr2 or: [ | `@temp3 |
>> ``@expr3 or: [ | `@temp4 | ``@expr4 or: [ | `@temp5 | ``@expr5 ] ] ]
>> ]';
>>                replace: '``@expr1 or: [ | `@temp2 | ``@expr2 ] or: [ | `@temp3 |
>> ``@expr3 ] or: [ | `@temp4 | ``@expr4 ] or: [ | `@temp5 | ``@expr5 ]
>> or: [ | `@temp6 | ``@expr6 ]'
>>                        with: '``@expr1 or: [ | `@temp2 | ``@expr2 or: [ | `@temp3 |
>> ``@expr3 or: [ | `@temp4 | ``@expr4 or: [ | `@temp5 | ``@expr5 or: [ |
>> `@temp6 | ``@expr6 ] ] ] ] ]';
>>                yourself
>>
>> 2010/1/4 Stéphane Ducasse <[hidden email]>:
>>> Nicolas
>>> I would love to get the latest version cleanup automatically
>>> If by accident a huge slice would be committed into the pharoInbox.
>>> what the others think?
>>>
>>> Stef
>>>
>>> On Jan 4, 2010, at 9:26 AM, Nicolas Cellier wrote:
>>>
>>>> My point was:
>>>> - these messages are Squeak specific
>>>> - they are slow (didn't knew about NewCompiler...)
>>>> - do they really add some value over nested and: ?
>>>>
>>>> Nicolas
>>>>
>>>> 2010/1/4 Lukas Renggli <[hidden email]>:
>>>>> The NewCompiler optimizes #and:and:and: to an optimized and nested
>>>>> #and:. The standard compiler does a normal message send with block
>>>>> activations for each condition and thus is dead slow.
>>>>>
>>>>> Lukas
>>>>>
>>>>> 2010/1/4 Stéphane Ducasse <[hidden email]>:
>>>>>> hi nicolas
>>>>>>
>>>>>> I saw that you apply some automatic refactoring in squeak about and:and: -> and:
>>>>>> and I wanted to know. Is and: more optimized than and:and: (I imagine that) but I would like
>>>>>> to know for sure.
>>>>>>
>>>>>> Stef
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> Pharo-project mailing list
>>>>>> [hidden email]
>>>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Lukas Renggli
>>>>> http://www.lukas-renggli.ch
>>>>>
>>>>> _______________________________________________
>>>>> 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
>>>
>>
>>
>>
>> --
>> Lukas Renggli
>> http://www.lukas-renggli.ch
>>
>> _______________________________________________
>> 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
>



--
Lukas Renggli
http://www.lukas-renggli.ch

_______________________________________________
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: about and:and: and and:

Stéphane Ducasse
In reply to this post by Nicolas Cellier
You did that manually :)
Ok so may be since there are only few senders I can do it too :)

Stef

> If this preserves formatting, proceed, else, beware.
> Given there were few senders in trunk, my change was manual, not
> automatic (Steph didn't you mean systematic ?).
>
> Nicolas
>
> 2010/1/4 Lukas Renggli <[hidden email]>:
>> From Slime:
>>
>> RBParseTreeRewriter new
>>        replace: '``@expr1 and: [ | `@temp2 | ``@expr2 ] and: [ | `@temp3 | ``@expr3 ]'
>>                        with: '``@expr1 and: [ | `@temp2 | ``@expr2 and: [ | `@temp3 | ``@expr3 ] ]';
>>                replace: '``@expr1 and: [ | `@temp2 | ``@expr2 ] and: [ | `@temp3 |
>> ``@expr3 ] and: [ | `@temp4 | ``@expr4 ]'
>>                        with: '``@expr1 and: [ | `@temp2 | ``@expr2 and: [ | `@temp3 |
>> ``@expr3 and: [ | `@temp4 | ``@expr4 ] ] ]';
>>                replace: '``@expr1 and: [ | `@temp2 | ``@expr2 ] and: [ | `@temp3 |
>> ``@expr3 ] and: [ | `@temp4 | ``@expr4 ] and: [  | `@temp5 | ``@expr5
>> ]'
>>                        with: '``@expr1 and: [ | `@temp2 | ``@expr2 and: [ | `@temp3 |
>> ``@expr3 and: [ | `@temp4 | ``@expr4 and: [ | `@temp5 | ``@expr5 ] ] ]
>> ]';
>>                replace: '``@expr1 or: [ | `@temp2 | ``@expr2 ] or: [ | `@temp3 | ``@expr3 ]'
>>                        with: '``@expr1 or: [ | `@temp2 | ``@expr2 or: [ | `@temp3 | ``@expr3 ] ]';
>>                replace: '``@expr1 or: [ | `@temp2 | ``@expr2 ] or: [ | `@temp3 |
>> ``@expr3 ] or: [ | `@temp4 | ``@expr4 ]'
>>                        with: '``@expr1 or: [ | `@temp2 | ``@expr2 or: [ | `@temp3 |
>> ``@expr3 or: [ | `@temp4 | ``@expr4 ] ] ]';
>>                replace: '``@expr1 or: [ | `@temp2 | ``@expr2 ] or: [ | `@temp3 |
>> ``@expr3 ] or: [ | `@temp4 | ``@expr4 ] or: [ | `@temp5 | ``@expr5 ]'
>>                        with: '``@expr1 or: [ | `@temp2 | ``@expr2 or: [ | `@temp3 |
>> ``@expr3 or: [ | `@temp4 | ``@expr4 or: [ | `@temp5 | ``@expr5 ] ] ]
>> ]';
>>                replace: '``@expr1 or: [ | `@temp2 | ``@expr2 ] or: [ | `@temp3 |
>> ``@expr3 ] or: [ | `@temp4 | ``@expr4 ] or: [ | `@temp5 | ``@expr5 ]
>> or: [ | `@temp6 | ``@expr6 ]'
>>                        with: '``@expr1 or: [ | `@temp2 | ``@expr2 or: [ | `@temp3 |
>> ``@expr3 or: [ | `@temp4 | ``@expr4 or: [ | `@temp5 | ``@expr5 or: [ |
>> `@temp6 | ``@expr6 ] ] ] ] ]';
>>                yourself
>>
>> 2010/1/4 Stéphane Ducasse <[hidden email]>:
>>> Nicolas
>>> I would love to get the latest version cleanup automatically
>>> If by accident a huge slice would be committed into the pharoInbox.
>>> what the others think?
>>>
>>> Stef
>>>
>>> On Jan 4, 2010, at 9:26 AM, Nicolas Cellier wrote:
>>>
>>>> My point was:
>>>> - these messages are Squeak specific
>>>> - they are slow (didn't knew about NewCompiler...)
>>>> - do they really add some value over nested and: ?
>>>>
>>>> Nicolas
>>>>
>>>> 2010/1/4 Lukas Renggli <[hidden email]>:
>>>>> The NewCompiler optimizes #and:and:and: to an optimized and nested
>>>>> #and:. The standard compiler does a normal message send with block
>>>>> activations for each condition and thus is dead slow.
>>>>>
>>>>> Lukas
>>>>>
>>>>> 2010/1/4 Stéphane Ducasse <[hidden email]>:
>>>>>> hi nicolas
>>>>>>
>>>>>> I saw that you apply some automatic refactoring in squeak about and:and: -> and:
>>>>>> and I wanted to know. Is and: more optimized than and:and: (I imagine that) but I would like
>>>>>> to know for sure.
>>>>>>
>>>>>> Stef
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> Pharo-project mailing list
>>>>>> [hidden email]
>>>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Lukas Renggli
>>>>> http://www.lukas-renggli.ch
>>>>>
>>>>> _______________________________________________
>>>>> 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
>>>
>>
>>
>>
>> --
>> Lukas Renggli
>> http://www.lukas-renggli.ch
>>
>> _______________________________________________
>> 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