On Fri, May 29, 2009 at 04:32:00PM +0200, Mark Overmeer wrote:
: * Daniel Carrera (daniel.carr...@theingots.org) [090529 14:24]:
: > I think that it would be a good idea to put Perl 5 and Perl 6 modules in
: > the same CPAN.
: I have a very cowardous reply on this. My CPAN6 design supports both
: sub-setting and super-setting archives. So, it can produce three
: access-points: pure-perl6, pure-perl5 and combined. If they physically
: share a disk "store", you even do not even need copies of the releases.
: And... I do not really care what kind of information people keep inside
: the archive. That is for the founding "board" of the archive to decide.
: As long as it has meta-data, it is ok to my scope.
I think this is an important point, philosophically. The internet,
and later the web, both succeeded primarily because they unified
identity *without* resorting to centralization (except to bootstrap
the top-level nameservers, of course). But identity must not be
confused with location. It's perfectly fine for various repos to
store only a subset of an archive, just as it's perfectly fine for
a node on the internet to only handle a portion of the traffic.
But they get away with this only because of uniform addressing.
So think of this as more a problem of identity. The data can flow
wherever it likes, as in a p2p network; as long as you can actually
*name* what you want to acquire, the network can figure out how to give
it to you eventually. This is why S11 specs that module versions are
immutable once made official, and names include versions and naming
authorities (and presumably some checksumming), so that it doesn't
matter where you get the module from, it will always be the same thing.
Nothing else is likely to scale. Let's all remember the old joke:
Biologist: What could possibly be worse than a velociraptor?
Physicist: Obviously, an acceloraptor.
Long term, acceloraptors tend to beat out velociraptors. Perl 6 is
all about being an acceloraptor. :)