>> >> It can be made pluggable, of course. I don’t want to have that there in a way that it requires >> the refactoring engine to be present all the time. >> >> If it’s there —> transform. If not —> do what it does now. >> >> But just think how much this simplifies the experience of people loading old code into a new >> Pharo version: it just keeps running and fixes itself! It’s that kind of things we need to be >> able to evolve the system. >> >> Imagine, this is a functionality (I think) no other system has! Yes but we should make it pluggable. I would like something that says before all the tests were green and after these automatic changes they are also green :) > I will not like a feature where it transforms my code without asking. > I would prefer that a diff browser pops up and asks me if changes are ok. Automatic rewrite of code often forgot to check some specific cases and you end with bugs in your code if there is no review. > The idea is great but the choice of changing the code or not has to be in the user hands. |
In reply to this post by Stephan Eggermont-3
We could ship a specific package with rules for each version of Pharo.
We did it with andre's work and we should continue. Le 1/9/15 10:23, Stephan Eggermont a écrit : > On 01-09-15 08:35, Marcus Denker wrote: >> But just think how much this simplifies the experience of people >> loading old code into a new >> Pharo version: it just keeps running and fixes itself! It’s that kind >> of things we need to be >> able to evolve the system. > > This is a crucial step to support continuous improvement indeed. > Just-in-time repeatable refactoring, reducing the cost of change > > Stephan > > > |
In reply to this post by stepharo
Imagine, this is a functionality (I think) no other system has! Yes! I would like something that says Exactly, that's what I implemented: you run the tests and all code covered will be transformed automaticallly *and* with the gurantee that it is correct. There are no false positives as we only transform when the deprecated method is called. It's a "perfect" transformation, but of course only for non-dead code. Marcus |
May be in that can we should have a
deprecated: andTransform: message Now the question is when do you build a rule. We should discuss with gustavo and his macro recorder. Stef
|
In reply to this post by Marcus Denker-4
On Wed, Sep 2, 2015 at 2:13 PM, Marcus Denker <[hidden email]> wrote:
> >>>> Imagine, this is a functionality (I think) no other system has! >> >> >> Yes but we should make it pluggable. >> > Yes! > >> >> I would like something that says >> before all the tests were green and after these automatic changes >> they are also green :) > > > Exactly, that's what I implemented: you run the tests and all code covered > will be transformed automaticallly Ahh. I thought you were thinking of doing it in normally executing code. Doing it while running tests makes more sense. It only occurs on a specific user action. If you start with clean packages, all changes can be reviewed. cheers -ben |
Free forum by Nabble | Edit this page |