This very likely does not preserve the formatting. The rewrite completely restructures the AST.
Lukas 2010/1/4 Nicolas Cellier <nicolas.cellier.aka.n...@gmail.com>: > 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 <reng...@gmail.com>: >> 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 <stephane.duca...@inria.fr>: >>> 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 <reng...@gmail.com>: >>>>> 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 <stephane.duca...@inria.fr>: >>>>>> 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 >>>>>> Pharo-project@lists.gforge.inria.fr >>>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> Lukas Renggli >>>>> http://www.lukas-renggli.ch >>>>> >>>>> _______________________________________________ >>>>> Pharo-project mailing list >>>>> Pharo-project@lists.gforge.inria.fr >>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project >>>>> >>>> >>>> _______________________________________________ >>>> Pharo-project mailing list >>>> Pharo-project@lists.gforge.inria.fr >>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project >>> >>> >>> _______________________________________________ >>> Pharo-project mailing list >>> Pharo-project@lists.gforge.inria.fr >>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project >>> >> >> >> >> -- >> Lukas Renggli >> http://www.lukas-renggli.ch >> >> _______________________________________________ >> Pharo-project mailing list >> Pharo-project@lists.gforge.inria.fr >> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project >> > > _______________________________________________ > Pharo-project mailing list > Pharo-project@lists.gforge.inria.fr > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project > -- Lukas Renggli http://www.lukas-renggli.ch _______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project