On Jun 30, Matthias Felleisen wrote: > Eli, I do not understand and/or appreciate your objection. > > Here is what I understand: > > -- you believe that top-level collects are something coherent > Q: could you explain this? In what sense is lang/ more or less > coherent than data/
They are currently coherent by necessity, because very little can be done with their contents. For example, the `lang' collection has both the student languages and the r5rs implementation -- and this was a mess because they cannot be separated. Later on this was cleared up by moving the r5rs code into its own collection. Another problem around `lang': we've talked about moving generic language support there (like `syntax/module-reader'), but this is impractical to do with the current setup. Back to `data', the problem is that you cannot have two toplevel `data' collections -- which means that you cannot have separate distributions of `data/foo' and `data/bar' since they must both appear in your plt installation or in your user directory -- not in both. > -- you introduce the notion of a package > Q: what is that and how does it differ from a collects? A package would be a (coherent) unit of distribution -- it should be possible to distribute it as an independent unit, it should have an owner (one or more people) -- but most of all, it should be clear what code is in the package. Currently, we only have collections some with no owner, some have files that are owned by different people. And to put things very concretely, I want to start working on the distribution thing -- and a solution to this problem is *needed*. I think that we're beyond the reasonable limit of a monolithic distribution -- so splitting it up to such packages is necessary. (That's why I said that the name is only a symptom, and that overall I *want* to see a solution to this. And I want one now (as in august), not in some hypothetical future.) -- ((lambda (x) (x x)) (lambda (x) (x x))) Eli Barzilay: http://barzilay.org/ Maze is Life! _________________________________________________ For list-related administrative tasks: http://lists.racket-lang.org/listinfo/dev