At Thu, 6 Jun 2013 10:00:56 -0400, Sam Tobin-Hochstadt wrote: > > When we have a small core, then there should be > > practically no packages without explicit dependencies --- when a > > package's dependencies are specified accurately, at least. > > Is it possible to enforce, either in the package system or in DrDr or > somewhere else, that dependencies are specified accurately?
I don't think we can enforce it precisely, but I think we can test it reasonably well. The simplest mechanism for testing dependencies is to just install the package on a clean core and run some unit tests. I think that's probably good enough for a while. Using built or binary packages for dependencies makes the check much faster than it would be purely from source. Since code in a package can synthesize a module reference dynamically, any static enforcement would have to be approximate, naturally (e.g., checks on all `require's). Approximate checks would be useful, and I don't think anyone has implemented them, yet. Complete enforcement would require some sort of dynamic check to constrain access from code from a given package. That seems tricky at best, and it's probably more than we need in practice. _________________________ Racket Developers list: http://lists.racket-lang.org/dev