caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Gerd Stolpmann <info@gerd-stolpmann.de>
To: bcpierce@cis.upenn.edu,
	"Benjamin C. Pierce" <bcpierce@saul.cis.upenn.edu>
Cc: Brian Rogoff <bpr@best.com>, caml-list@inria.fr
Subject: Re: [Caml-list] standard regex package
Date: Thu, 23 Aug 2001 23:49:50 +0200	[thread overview]
Message-ID: <01082400035105.02716@ice> (raw)
In-Reply-To: <3750.998602056@saul.cis.upenn.edu>

On Thu, 23 Aug 2001, Benjamin C. Pierce wrote:
>> For those who don't know: You can
>> install almost every 3rd party Perl package by simply doing
>> 
>> perl Makefile.pl
>> make
>> make test
>> make install
>> 
>> It is simple to do, and that's an important aspect of the success of Perl (a
>> language which is nothing without CPAN).
>
>Having just spent 90 minutes last weekend trying to get a PERL package
>installed and working, I can say with confidence that PERL's standard
>installation procedure, while slick, leaves one big thing to be desired:
>following dependencies.  The problem with the "CPAN way" is that it leads
>to 10,000 people writing cool little packages, all of which depend on ten
>other cool little packages written by somebody else, etc., etc.
>Following all these dependency chains manually by trying to install one
>package, failing, grepping around in CPAN for the ones it depends on,
>downloading them, trying to install, failing, ... is a pretty boring way
>to spend a morning.
>
>I really wish that I'd been able to say to some tool, "I want to use
>module X; please go off to CPAN and find, download, and install me the
>current versions of X and all the modules it transitively depends on."  I
>know that it would be reallyreally hard to design a framework that would
>always do the right thing, but if it did the right thing 99% of the time
>and gave me a type error in 99% of the cases where it did not do the
>right thing, it would be fantastic (and I believe both of these numbers
>would be rather easy to achieve by low-tech means).

The CPAN module does it; see perldoc CPAN.

For O'Caml the corresponding functionality would be much harder because
of possible version conflicts. Say you have packages A and B already installed,
and A depends on B. Furthermore, you want to install package C, but package C
requires the new version B'. For Perl, this is less dramatic than it seems to
be because everything is dynamic, and the packages can themselves cope with
version conflicts. For Caml, a clever automatic installer must decide:

- Does the already installed package A work with the new version B'? If yes, 
  is it necessary to recompile package A?

- If package A must be renewed, too: Is there a version A' that works with B'?

- If there are other packages that depend on A: Is it necessary to
  recompile/relink them?

Because these questions are difficult, findlib does not include versioned
dependencies (but it includes versions as such, and dependencies as such). So
it requires still an intelligent operator that helps finding the right versions.

One feature that should be added is automatic recompilation of dependent
packages (from known sources).

-- 
----------------------------------------------------------------------------
Gerd Stolpmann      Telefon: +49 6151 997705 (privat)
Viktoriastr. 45             
64293 Darmstadt     EMail:   gerd@gerd-stolpmann.de
Germany                     
----------------------------------------------------------------------------
-------------------
Bug reports: http://caml.inria.fr/bin/caml-bugs  FAQ: http://caml.inria.fr/FAQ/
To unsubscribe, mail caml-list-request@inria.fr  Archives: http://caml.inria.fr


  reply	other threads:[~2001-08-23 22:04 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-08-22 18:53 [Caml-list] Str.string_match raising Invalid_argument "String.sub" in gc neale-caml
2001-08-22 19:18 ` Alain Frisch
2001-08-22 20:41   ` Neale Pickett
2001-08-23 10:21     ` Frank Atanassow
2001-08-23 16:06       ` Neale Pickett
2001-08-23 16:25         ` Alain Frisch
2001-08-23 18:14           ` Neale Pickett
2001-08-22 20:23 ` Markus Mottl
2001-08-22 20:31   ` Miles Egan
2001-08-22 20:52     ` Michael Leary
2001-08-23  5:36       ` Jeremy Fincher
2001-08-22 22:06     ` Nicolas George
2001-08-23  7:08       ` [Caml-list] PCRE as standard (Was: Str.string_match raising Invalid_argument...) Florian Hars
2001-08-23 17:31       ` [Caml-list] Str.string_match raising Invalid_argument "String.sub" in gc Brian Rogoff
2001-08-23 18:08         ` [Caml-list] standard regex package Miles Egan
2001-08-23 19:28           ` Brian Rogoff
2001-08-23 19:49             ` Miles Egan
2001-08-23 19:51             ` Gerd Stolpmann
2001-08-23 21:12               ` Brian Rogoff
2001-08-23 21:27               ` Benjamin C. Pierce
2001-08-23 21:49                 ` Gerd Stolpmann [this message]
2001-08-23 22:11                   ` Miles Egan
2001-08-23 23:55                     ` Gerd Stolpmann
2001-08-24  9:03                       ` Claudio Sacerdoti Coen
2001-08-24  9:26                       ` Sven
2001-08-27 15:46                         ` [Caml-list] Package dependencies [Was: standard regex package] Ian Zimmerman
2001-08-27 20:50                           ` Gerd Stolpmann
2001-08-24  9:23                   ` [Caml-list] standard regex package Sven
2001-08-27 15:54                     ` Ian Zimmerman
2001-08-30  8:41                       ` Sven
2001-08-23 21:06             ` RE : " Lionel Fourquaux
2001-08-24  9:23               ` [Caml-list] dynamic loading and OS interface Xavier Leroy
2001-08-27 15:16             ` [Caml-list] standard regex package Ian Zimmerman
2001-08-27 15:35               ` Brian Rogoff
2001-08-24  9:13           ` Xavier Leroy
2001-08-24 10:16             ` Markus Mottl
2001-08-24 16:49             ` Miles Egan
     [not found]   ` <w533d6j1vxn.fsf@woozle.org>
     [not found]     ` <20010823112653.A7085@chopin.ai.univie.ac.at>
     [not found]       ` <w5366be7fd0.fsf_-_@woozle.org>
2001-08-23 20:01         ` [Caml-list] Re: [OFF-LIST] Str.string_match raising Invalid_argument "String.sub" in gc Markus Mottl
2001-08-23 20:31           ` Patrick M Doane
2001-08-24 18:46 [Caml-list] standard regex package Arturo Borquez

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=01082400035105.02716@ice \
    --to=info@gerd-stolpmann.de \
    --cc=bcpierce@cis.upenn.edu \
    --cc=bcpierce@saul.cis.upenn.edu \
    --cc=bpr@best.com \
    --cc=caml-list@inria.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).