[racket-dev] [plt] Push #25419: master branch updated

From: Eli Barzilay (eli at barzilay.org)
Date: Fri Oct 5 21:55:01 EDT 2012

A few minutes ago, Sam Tobin-Hochstadt wrote:
> On Oct 5, 2012 9:16 PM, "Eli Barzilay" <eli at barzilay.org> wrote:
> >
> > 10 minutes ago, Robby Findler wrote:
> > > Oh, right. Duh.
> > >
> > > And even better, IMO, if it were futures-visualizer/typed/* were
> > > a place you could put this information.
> >
> > Yeah -- that would make distribution much easier, since it will be
> > another global convention, like `tests' and `scribblings'.
> I would like to keep things in the `typed' collection.  This
> maintains the symmetry with `typed/racket.  The other conventions
> like 'tests' are not externally visible.

Yes, the required name would change -- but it's still much saner in
terms of authorship & maintenance than me having to keep a file in
your collection.

For example, it's really simple to deal with file & directory
properties that get propagated as defaults (which is what
`meta/props' does) -- simple enough that there's no need for custom
hooks etc.

And this example applies to many other cases: having both `foo' and
`tests/foo' belong to the same package is something that requires code
hooks in the distribution specs -- and that's how it got as hairy as
it did.  This is why I generally think that a much better direction is
to have a strong preference towards easily identifiable-by-prefix
parts of the tree.

And note BTW that in the case of `typed/*', the hook is much more
complicated than the directory-based ones: you need to start with
"typed/dir/file.rkt", strip off the "typed/", look for the rules for
that, then apply them to the first path.  IOW, this sounds like
something that will require extending the already over-engineered and
complex distribution code.

          ((lambda (x) (x x)) (lambda (x) (x x)))          Eli Barzilay:
                    http://barzilay.org/                   Maze is Life!

Posted on the dev mailing list.