[racket] small fun racket tool coding project for someone

From: Vincent St-Amour (stamourv at ccs.neu.edu)
Date: Thu Oct 14 11:01:08 EDT 2010

Ryan made something that sounds quite close:

collects/macro-debugger/analysis/check-requires.rkt

It works pretty well.

Vincent


At Thu, 14 Oct 2010 09:53:38 -0500,
Robby Findler wrote:
> 
> This would be nice to happen, but one warning: Check Syntax's red is
> not foolproof. If some macro picks up the lexical context from one
> identifier and drops it on another one, Check Syntax may not notice
> that the program needs one of the requires. Also, if one of the
> requires does something to initialize some state, Check Syntax may not
> notice.
> 
> In other words, you may not save as much of that day as you'd like ....
> 
> Robby
> 
> On Thu, Oct 14, 2010 at 9:46 AM, Neil Van Dyke <neil at neilvandyke.org> wrote:
> > If anyone wants to get their feet wet using the Check Syntax info, by coding
> > a useful little tool...
> >
> > I'd love to have a command-line tool that read in a Racket source file and
> > removed the unnecessary "require"s.  You know, the ones that turn red when
> > you hit Check Syntax button in DrRacket.
> >
> > I have several hundred legacy Scheme files, and perhaps 2/3 of the
> > "require"s are unnecessary.  Removing the unnecessary ones manually in
> > DrScheme could take a day, but just a few minutes with a scriptable
> > command-line filter.
> >
> > (Probably a lot of these 2/3 are due to refactoring code over time.  And I'm
> > guessing that some of it is copy&paste reuse by people who don't want to
> > have to iterate multiple times and figure out which "require"s they still
> > need before their code will compile.)
> >
> > --
> > http://www.neilvandyke.org/
> > _________________________________________________
> >  For list-related administrative tasks:
> >  http://lists.racket-lang.org/listinfo/users
> >
> _________________________________________________
>   For list-related administrative tasks:
>   http://lists.racket-lang.org/listinfo/users


Posted on the users mailing list.