[racket-dev] experiment reorganizing the repo into packages

From: Matthew Flatt (mflatt at cs.utah.edu)
Date: Wed May 29 14:11:10 EDT 2013

At Wed, 29 May 2013 11:11:18 -0600, Neil Toronto wrote:
> On 05/28/2013 03:44 PM, Sam Tobin-Hochstadt wrote:
> > On Tue, May 28, 2013 at 5:14 PM, Matthew Flatt <mflatt at cs.utah.edu> wrote:
> >>
> >> I don't know whether the "-lib"/"-docs" split is worthwhile, but it's
> >> part of erring on the side of breaking things apart. Maybe it makes
> >> more sense to keep things together and rely on binary packaging to
> >> reduce dependencies.
> Would using binary packaging for that be more complicated?

Relying on binary packaging is simpler for an author, since it means
not splitting into "-lib" and "-docs" directories. The drawback of
binary packaging is for users: someone who installs the package does
not get source.

> >> So, how does this split correspond to what you expected? (My guess is
> >> that this far too fine-grained for some of us, while others will want
> >> exactly this kind of flexibility.)
> I expect `plot' to depend on `math' in the near-ish future. Right now, 
> `math' already depends on `plot' to build its docs. IOW, I expect the 
> sources to be interdependent, but as binaries, `plot' will depend on 
> `math' but `math' won't depend on `plot'. Can the package system handle 
> that[...]?

Yes. Package dependencies can be cyclic (unlike module dependencies),
and packages can have cyclic build dependencies without cyclic run

Posted on the dev mailing list.