[plt-dev] Re: renaming programs in the distribution

From: Matthew Flatt (mflatt at cs.utah.edu)
Date: Wed Apr 21 09:51:06 EDT 2010

Yes, I advocate adding `scribble' and `slideshow' commands to
`racket-tool', although I also think that we should leave the existing
Scribble and Slideshow executables.

DrRacket isn't a command-line tool; it's a GUI alternative to
`racket-tool' (and more than that, of course). Also, it already has
"Racket" in its name.

At Wed, 21 Apr 2010 08:41:54 -0500, Robby Findler wrote:
> Does this also imply that you advocate "racket-tool scribble" over
> just "scribble" (and similarly for slideshow? Drracket?)
> 
> Robby
> 
> On Wednesday, April 21, 2010, Matthew Flatt <mflatt at cs.utah.edu> wrote:
> > Since the vote is split evenly between 1A and 3, I think that 1B is the
> > right compromise:
> >
> >  * It keeps `racket' as a REPL plus program launcher.
> >
> >  * It puts "racket" into the command program's name.
> >
> >  * It avoids fragile heuristics on filenames versus commands.
> >
> > The name `racket-tool' is too long for me, but after aliasing `rt' to
> > `racket-tool' (and `r' to `racket') in my shell, I expect to be
> > completely happy with 1B.
> >
> > At Tue, 20 Apr 2010 10:38:49 -0600, Matthew Flatt wrote:
> >> Here are the plausible options we came up with on the IRC channel:
> >>
> >>  1: Keep `racket' plus a separate command tool
> >>   1A: Keep `rico' as the command tool (i.e., status quo)
> >>   1B: Rename `rico' to `racket-tool'
> >>
> >>  2: Rename `racket' to `racket-run', rename `rico' to `racket', add a
> >>     `racket run' command, and let `racket' (no command) still provide a
> >>     REPL
> >>
> >>  3: Like 2, but let `racket' guess whether its first argument is a
> >>     command or a file name so that `racket <file>' often works (i.e.,
> >>     the most recent proposal, but amended with `racket-run' for
> >>     scripts)
> >>
> >> 1A is obviously best, because it fits existing conventions.
> >> 1A is obviously worst, because `rico' doesn't contain "Racket".
> >>
> >> 1B acceptably fixes the problem with `rico' by adding "racket".
> >> 1B leaves us with an unacceptably long and ugly tool name, as will
> >>    anything that starts "racket".
> >>
> >> 2 works well, since it makes `racket' the one executable for
> >>   everything.
> >> 2 doesn't work, because users expect `racket <file>' to to run the
> >>   file.
> >>
> >> 3 looks like the best combination; it almost always does what you'd
> >>   expect, and the only real trouble shows up with people who put "." in
> >>   their PATH, which is a typical newbie mistake that we shouldn't try
> >>   to accommodate. [But I have "." in my PATH.]
> >> 3 looks suspiciously like an attempt to innovate; it's unusual, it has
> >>   surprising corner cases, and it interacts awkwardly with tab
> >>   completion.
> >>
> >>
> >> I can live with any of the options.
> >>
> >> My vote, most preferred to least:
> >> '(3 1B 1A 2)
> >>
> >> _________________________________________________
> >>   For list-related administrative tasks:
> >>   http://list.cs.brown.edu/mailman/listinfo/plt-dev
> > _________________________________________________
> >   For list-related administrative tasks:
> >   http://list.cs.brown.edu/mailman/listinfo/plt-dev
> >


Posted on the dev mailing list.