Version française
Home     About     Download     Resources     Contact us    
Browse thread
Hoogle for Ocaml
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: Gerd Stolpmann <gerd@g...>
Subject: Re: What is CPAN? (was: Re: [Caml-list] Hoogle for Ocaml)

Am Donnerstag, den 03.12.2009, 18:00 +0000 schrieb Richard Jones:
> On Thu, Dec 03, 2009 at 05:51:00PM +0100, rixed@happyleptic.org wrote:
> > > Not really ..  I have been meaning for several years to implement
> > > something like *CPAN* for OCaml.  CPAN is much more than what people
> > > here seem to think it is.
> > 
> > Out of curiosity, what's in CPAN that's not in GODI ?
> 
> OK, I knew I'd have to answer this question :-)
> 
> CPAN is:
> 
> (1) A network of redundant mirrors which means you can always get the
> tarball you need, even when the original site is down:
> 
> http://mirrors.geoexpat.com/cpan/authors/id/R/RW/RWMJ/
> http://mirror.unej.ac.id/cpan/authors/id/R/RW/RWMJ/
> http://mirrors.ucr.ac.cr/CPAN/authors/id/R/RW/RWMJ/
> (more: http://search.cpan.org/mirror)
> 
> (2) CPAN unpacks each tarball and makes the source and documentation
> available in a browsable way:
> 
> http://search.cpan.org/~rwmj/Net-FTPServer-1.122/lib/Net/FTPServer.pm
> http://cpansearch.perl.org/src/RWMJ/Net-FTPServer-1.122/lib/Net/FTPServer.pm
> 
> (3) An excellent search tool:
> 
> http://search.cpan.org/search?query=IO%3A%3Astringy&mode=all
> 
> (4) A central namespace registry for Perl modules.  Once someone has
> the name 'Net::FTPServer', if you want to write an FTP server, you
> know you need to give it a different name.
> 
> (5) A testing network.  When you submit a new version of your module,
> it is picked up by automated and manual testers around the world, who
> build and test it on their systems (often oddball ones - eg. I get
> reports about it failing to build on SunOS and AIX).
> 
> (6) A place where you can browse everything that Perl supports:
> 
> http://www.cpan.org/modules/by-module/
> http://www.cpan.org/modules/01modules.index.html
> 
> Which is great advertising for Perl, because you can immediately
> see the breadth of available libraries for Perl.
> 
> (7) A command line tool to download and install CPAN modules:
> 
> http://search.cpan.org/~andk/CPAN-1.9402/lib/CPAN.pm#DESCRIPTION
> 
> -- Note what CPAN is *not*:
> 
> It's not a packaging system.  Perl has its own packaging standard(s)
> (like cabal for Haskell), but CPAN doesn't care.  It hosts source
> tarballs.
> 
> It doesn't store binaries.
> 
> It's not strongly centralized.  Actually, it's very loose indeed.
> Although there is a central place where you upload modules, they are
> very loose about naming, content, licensing etc. (within limits of
> course).
> 
> --
> 
> > Out of curiosity, what's in CPAN that's not in GODI ?
> 
> I think that Gerd Stolpmann has (to his credit) done a lot of the work
> that CPAN does, but I also think it should be on a firmer footing,
> mirrored more widely, the search tools should be linked from the OCaml
> home page, and not tied to building modules, but to hosting source
> tarballs.  And more inclusive - it should include *every* source
> tarball -- as much OCaml source as possible.

Yes, nice goals - but hard to achieve if you only have limited
resources. Also, don't forget that Perl attracted a lot of sysadmins,
and for them it is a lot of fun to create something like CPAN. For the
typical Ocaml developer it is scripting hell. Finally, there is the
question of creating "normative pressure" so sources have some formal
uniformity - normal for sysadmins, but a no-go for the creative
ocamlists.

I'd say it is a different project than GODI to make sources available,
browsable and searchable. There's some overlap, though.

Gerd
-- 
------------------------------------------------------------
Gerd Stolpmann, Bad Nauheimer Str.3, 64289 Darmstadt,Germany 
gerd@gerd-stolpmann.de          http://www.gerd-stolpmann.de
Phone: +49-6151-153855                  Fax: +49-6151-997714
------------------------------------------------------------