[racket-dev] Refactoring Idea

From: Matthias Felleisen (matthias at ccs.neu.edu)
Date: Mon Apr 28 11:20:00 EDT 2014

This is one of those places where our desire to not include
extra-linguistic mechanisms conflicts with our desire to 
support our programmers. I have had this idea many times, 
as I am sure have many others and Jens probably had it tons
of times over the years. 

Even a package isn't enough because one might have client 
modules somewhere else. 





On Apr 28, 2014, at 11:03 AM, Robby Findler <robby at eecs.northwestern.edu> wrote:

> I guess this would work best if DrRacket were given a package (and it
> could infer the current package from the location of the file being
> edited).
> 
> So if someone wants to implement a function that, given a package spec
> and a renaming and then does the work, I'd be happy to try to
> integrate it into DrRacket proper. Also: "does the renaming" should
> mean rewrite the files on the disk and rewrite the files that are open
> in DrRacket and there is some interesting questions when the file is
> open and the save file isn't up to date. DrRacket can easily supply a
> list of text% objects that correspond to open files, however (and they
> can be queried to find out if they are saved or what their content is,
> etc).
> 
> Robby
> 
> On Mon, Apr 28, 2014 at 9:40 AM, Jens Axel Søgaard
> <jensaxel at soegaard.net> wrote:
>> From time to time the topic of refactoring pop up on the mailing list.
>> 
>> Here is one feature I'd like:
>>    After renaming an exported identifier in a module foo,
>>    any references to the identifier in external modules need
>>    to be renamed too. DrRacket could after renaming in foo is done,
>> ask for a folder in which to search for module that require foo and
>> rename the identifier in those modules.
>> 
>> 
>> --
>> Jens Axel Søgaard
>> 
>> _________________________
>>  Racket Developers list:
>>  http://lists.racket-lang.org/dev
> 
> _________________________
>  Racket Developers list:
>  http://lists.racket-lang.org/dev



Posted on the dev mailing list.