Jan Ingvoldstad wrote:
On Fri, Jul 30, 2010 at 11:27, Steffen Schwigon <s...@renormalist.net> wrote:
Just an opinion: imho every effort should go towards integrating CPAN
in any way.

Maybe any of those META2.0, cpanminus, CPAN::Packager,
CPAN::Dpendency, MyCPAN::*, POD6 thingies could be assembled into
something to integrate Perl6 with CPAN?

There is a problem with that, and that is that we may want to re-use the
same package names that are already in use on CPAN, in order to avoid evil
Klingon naming contortions (good Klingon naming contortions are of course
QaQ).

I believe that there were good proposals for this made as well as specced a few years ago for a new or updated format for distributions and metadata so that it would work for multiple programming languages.

I don't recall the url ATM, though it may be in the Pugs repo.

Part of the deal was having several pieces of metadata that combined for the fully-qualified name of a module, such as language (eg, Perl_6 vs Perl_5 vs doc-only vs Javascript etc) plus base name (eg, Foo::Bar::Baz) plus authority (eg, cpan:DUNCAND or http://example.com) plus version (eg, 1.2.3).

Done this way, distinct languages can have the same module base name (Foo::Bar::Baz) but the Perl_6 or Perl_5 part would effectively make them not conflict. Similarly, differing authorities wouldn't conflict, as each one would typically represent a fork.

A related example from the Perl 6 spec (S11):

    use Whiteness:from<perl5>:name<Acme::Bleach>:auth<cpan:DCONWAY>:ver<1.12>;
    use Whiteness:from<perl5 Acme::Bleach cpan:DCONWAY 1.12>;  # same thing

... this that the metadata would generalize.

I *really* want to use a multi-language-savvy spec like this to distribute with.

-- Darren Duncan

Reply via email to