TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Ask HN: Why don't CPAN equivalents exist for every language/framework?

5 pointsby edbabout 16 years ago
Hi,<p>I came across this blog post today : http://joose-js.blogspot.com/2009/02/cpan-for-javascript.html<p>He says, "While there have been attempts to create a CPAN (comprehensive module directory) for JavaScript it has failed <i>just as this has failed for pretty much every language but Perl</i>."<p>Is this too broad a statement? Has this really failed in every language but Perl? I know because I tried to build a "Comprehensive Module Directory" for cakePHP and pretty much failed for various reasons (lack of community support, inconsistencies in standards, etc etc)<p>Any thoughts on this? Any published theories on why this is hard? How do you go about starting a directory for your favourite language or framework? Does the answer lie in the fact that frameworks might be the new "module directory"? Am I being stupid? :)

5 comments

silentbicycleabout 16 years ago
For one thing, there's conflict between using an OS-level packaging system (such as Debian or Ubuntu's package repositories, BSD ports, etc.) and a language-level packaging system, and mixing the two often doesn't work so well.<p>Also, as a language, Perl occupied a somewhat unique niche for a while. It <i>certainly</i> had a head start on other scripting languages, and I think most other languages at the time had issues with portability or multiple implementations that could prevent such a project from achieving escape velocity.<p>While we're just listing things, Lua has LuaRocks (<a href="http://luarocks.org" rel="nofollow">http://luarocks.org</a>), Chicken Scheme has Eggs Unlimited (<a href="http://chicken.wiki.br/chicken-projects/egg-index-4.html" rel="nofollow">http://chicken.wiki.br/chicken-projects/egg-index-4.html</a>), Haskell has hackage (<a href="http://hackage.haskell.org/packages/archive/pkg-list.html" rel="nofollow">http://hackage.haskell.org/packages/archive/pkg-list.html</a>), etc.
duskwuffabout 16 years ago
Python has PyPI. Ruby has the Gems repository. PHP has PEAR. There's no CPAN equivalent for Javascript, but that's largely because one doesn't generally install Javascript libraries in the same sort of way that one installs Perl modules.
rmlabout 16 years ago
From Jarkko Hietaniemi, the CPAN Master Librarian:<p><a href="http://www.cpan.org/misc/ZCAN.html" rel="nofollow">http://www.cpan.org/misc/ZCAN.html</a>
jpcx01about 16 years ago
Saying Rubygems as a CPAN like system has failed is retarded. It's vastly easier to work with than CPAN, and has gems for everything imaginable. The barrier to package up a new gem is almost nil (nearly automatic if you have a github repo).
sriabout 16 years ago
maybe because we now live in the google era -- easier/faster to just google it