[racket-dev] single-collection packages

From: Matthew Flatt (mflatt at cs.utah.edu)
Date: Tue Jun 25 16:24:56 EDT 2013

I had suggested a `multi-collection?' definition in "info.rkt" to
designate a multi-collection package, but I don't like having
`single-collection' and `multi-collection?' (e.g., what happens if you
define then in a conflicting way?).

So, I think it's better to define `collection':
 
 * (define collection <string>) --- a single-collection package whose
   collection name is <string>.

 * (define collection 'multi) --- a multi-collection package.

 * (define collection 'same-as-pkg) --- a single-collection package
   whose collection name is the package's name.

   (I don't think anyone should write this in the long run, since it
   will be the same as leaving out a `collection' definition.)

For now, the default is 'multi for compatibility. The intent is to
change the default to 'same-as-pkg after a brief transition period.

I'm about to push the change with 'multi as the default, but I'm happy
to revise further if there's a better idea soon.

If this proposal stands after a day or two, then I'll update my
existing packages with `(define collection 'multi)', expect that
everyone else does the same, and then flip the default in a week or
son.


Posted on the dev mailing list.