Compiler updating user code

Xavier Bigand flamaros.xavier at gmail.com
Fri Mar 14 11:55:27 PDT 2014


Le 14/03/2014 08:10, Rikki Cattermole a écrit :
> On Friday, 14 March 2014 at 05:15:05 UTC, Manu wrote:
>> So it comes up fairly regularly that people suggest that the compiler
>> should have a mode where it may update user code automatically to assist
>> migration to new compiler versions.
>>
>> I'm personally against the idea, and Walter certainly doesn't like it,
>> but
>> it occurred to me that a slight variation on this idea might be awesome.
>>
>> Imagine instead, an '-update' option which instead of modifying your
>> code,
>> would output a .patch file containing suggested amendments wherever it
>> encountered deprecated code...
>> The user can then take this patch file, inspect it visually using their
>> favourite merge tool, and pick and choose the bits that they agree or
>> disagree with.
>>
>> I would say this approach takes a dubious feature and turns it into a
>> spectacular feature!
>>
>> Language changes are probably easy enough to handle, but what about cases
>> of 'deprecated' in the library?
>> It's conceivable that the deprecated keyword could take an optional
>> argument to a CTFE function which would receive the expression as a
>> string,
>> and the function could transform and return an amended string which would
>> also be added to the output patch file. This way, the feature could
>> conceivably also offer upgrade advice for arbitrary library changes.
>>
>> Considering the advice in the context of a visual diff/merge window would
>> be awesome if you ask me.
>
> Sounds like a cool idea. But not as part of the compiler. Its more of a
> use case for compiler as a library ;)
IMO these kind of tool is same as code beautifuler or refactoring 
helpers (eclipse give you some tips to fix your errors on imports,...)



More information about the Digitalmars-d mailing list