[plt-dev] `rico' and ".rkt"

From: Matthew Flatt (mflatt at cs.utah.edu)
Date: Mon Feb 15 11:09:30 EST 2010

More Racket plans for discussion:

 * Some of us have discussed collapsing `setup-plt', `mzc', `planet',
   `plt-help' and (in case I've overlooked any) other miscellaneous
   programming tools into a single `rico' executable.

   The `rico' program will take a command name, similar to `svn' and
   other tools. For example, `setup-plt' would become `rico setup', and
   `mzc' or `mzc --make' would become `rico make'.

   We could further collapse `mzscheme' into `rico run', or we could
   have just `racket' instead of `rico'. An advantage of separating
   `racket' and `rico' is that `racket' can keep the command-line
   syntax of `mzscheme'; for example `#! racket' will work for Unix
   scripts. It may also be better to keep the run-time system separate
   from development tools.

 * The file suffix for a Racket program could be ".rkt", but you
   shouldn't have to change existing code that uses ".ss" either as a
   file name or in a module reference.

   We're not entirely sure how to achieve that second part, but here's
   one idea that might work: In module paths names, ".ss" will be
   equivalent and normalized to ".rkt". The module-name resolver,
   meanwhile, will convert ".rkt" to ".ss" if only a ".ss" file is
   present. So, you can migrate from ".ss" to ".rkt" at either the
   definition or use of a module, independent of the other side.

Posted on the dev mailing list.