top | item 13580924

(no title)

bashcoder | 9 years ago

To a large degree, the ongoing utility of Perl 6 depends upon the continued vibrancy of the CPAN community. IMHO, CPAN is anything but vibrant by today's standards.

While CPAN hosts a vast archive of nearly 35,000 modules[1], many are aging. Fewer than 800 modules are known to exist for Perl 6.[2]

[1] http://www.modulecounts.com/ [2] https://modules.perl6.org/

discuss

order

avar|9 years ago

    > CPAN is anything but vibrant by today's standards.
I guess it depends on how you count it, but if you look at the actual statistics[1] the number of uploads, new authors is pretty much the same as when perl was in its heyday.

This isn't all old code churn either, from some brief clicking around new CPAN distributions in January peaked in 2005 at 251, whereas January 2017 saw 187[3].

Sure, Perl has been surpassed to a large extent proportional to other languages, but what tends to get forgotten in these comparison between language popularity is that even languages that have "fallen from grace" are comparatively going just as strong as they were 10 years ago, because computing has grown in the aggregate.

Which means that while your language of choice may not be as well known to your typical programmer as it was 10 years ago, the likelyhood of finding an existing module to perform some task is about the same.

1. http://stats.cpantesters.org/trends.html#stats12

2. http://stats.cpantesters.org/newdistros/2005.html

3. http://stats.cpantesters.org/newdistros/2017.html

raiph|9 years ago

> Perl 6 depends upon the continued vibrancy of the CPAN community.

Why do you say that? Is this a theoretical point, a reasonable conclusion based on reading about Perl 6, or something based on trying and failing to do something with Perl 6?

> IMHO, CPAN is anything but vibrant by today's standards.

Have you encountered problems that aren't being addressed? What do you make of the river cleanup effort[1] and the new metacpan?[2]

> many [CPAN modules] are aging.

Do you agree that "aging" that's due to modules continuing to work without needing to be changed (due to careful maintenance of backward compatibility and mass testing[3]) is actually a good thing even if it looks bad?

Do you agree that the same "aging" point can reasonably be made about the module archives of Python, Haskell, Fortran and Rust? If not, what is/are the key difference(s)?

> Fewer than 800 modules are known to exist for Perl 6.

Do you agree this might be a good sign, reflecting the "lots built in" aspect of Perl 6?

Are you aware that it's possible to use ordinary Perl 6 code with modules from Python, Ruby, Lua, Perl 5, etc.?[4]

[1] http://neilb.org/2015/04/20/river-of-cpan.html

[2] https://metacpan.org/about/meta_hack

[3] http://stats.cpantesters.org/

[4] http://modules.perl6.org/#q=inline

marvy|9 years ago

I'm no Perl user, but surely 800 is pretty good for a one year old language? How many did Perl 5 have when it was one year old? (That's a trick question: CPAN was officially launched about year after Perl 5 came out; see here http://history.perl.org/PerlTimeline.html)

bashcoder|9 years ago

Fair point, but it's also fair to note that Perl 6 development began 17 years ago.

tzs|9 years ago

It looks like Perl 6 does a good job of letting you use modules from other languages, which should help quite a bit.

Here's a link I found on Reddit showing an example of using Python's matplotlib from Perl 6.

https://gist.github.com/awwaiid/ef3f0abcfa96e34977b4

zyxzkz|9 years ago

It doesn't help that CPAN is an archaic module system with a user interface (PAUSE) straight out of 1995.

mst|9 years ago

PAUSE is ugly, though I mostly use automated uploaders so I don't have to look at it.

I'm not sure what you find archaic about CPAN, the package/distribution distinction is a huge win that the rest of the world still hasn't caught on to, and the file-based nature means it scales stupidly well (npm's scaling issues simply can't happen to us).

Unless by archaic you mean "built as simply as possible, and built to last", which is basically why I love it :)