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