YC wrote: > Robby Findler wrote: > > I guess the idea is that you'd eliminate the syntactic difference > between a planet-located library and one in the distribution and then > require on some external source to know where the package is located? > Something like that? How would that work? > > Hi Robby - there are a lot of ways to go about doing this; Jay pointed to > some ideas. > > Here's one KISS approach without major changes (assuming the syntax have been > unified): > > Modify the module path resolver so that it does the following lookup for > non-versioned require specs: > try lookup the package in COLLECTS > if #1 fails, lookup the package in planet cache > if #2 fails, lookup the package in planet repo > For the versioned specs, you can skip the collects step above since it is > currently not versioned. But of course you can also change collects to > become versionable in the future if you wish to re-architect the system.
I agree with pretty much everything said so far. Here are some further thoughts: I've expressed a desire in the past to be able to specify versioned dependencies on some of the "big" libraries that are in core. I could, say, get that new bug fix in SRFI 19 without having to worry about upgrades to other core libraries. I'd also like to be able to set up a PLaneT proxy to add in-house libraries in on the top of publicly available libraries from planet.racket-lang.com. This would let me get rid of a bunch of nasty hacks and scripts in the current Untyped build process. Racket's main distribution is big and takes time to compile and install. I'd personally be in favour of a leaner core distribution with more code in external packages, so I can choose what I download when I'm only interested in a single web application. Of course, it would also useful to have a "kitchen sink" distribution that gives you everything you need if you don't have a network connection on your PC. Cheers, -- Dave
_________________________________________________ For list-related administrative tasks: http://lists.racket-lang.org/listinfo/dev

