caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: "Daniel Bünzli" <daniel.buenzli@epfl.ch>
To: Sylvain Le Gall <sylvain@le-gall.net>
Cc: caml-list@inria.fr
Subject: Re: [Caml-list] Re: Cherry-picking modules (was Re: [ANN] OCaml Reins 0.1 - Persistent Data	Structure Library)
Date: Wed, 26 Sep 2007 14:22:19 +0200	[thread overview]
Message-ID: <45E37235-E843-4A27-95FF-88C41E5A3DCC@epfl.ch> (raw)
In-Reply-To: <slrnffkcu3.3nv.sylvain@gallu.homelinux.org>

Le 26 sept. 07 à 12:26, Sylvain Le Gall a écrit :

> ** you make a bug correction in libA, as many developers you don't  
> have
>   time to submit bug upstream -> libA upstream and libA embedded  
> begin to
>   be different

I agree this is a problem. But realisticaly if you only bug fix,  
interfaces usually do not change. Hence upstream and local don't  
really drift away.  You should be able to take a new version of libA  
and plug it right away.

> * libA is not embedded inside progB:
> ** libA do a minor bug correction -> progB just need to be recompiled
>    (no release), easy to do automatically with a dependency tracking

I disagree, the new version of libA may break invariants progB was  
relying on. If progB wants to use the new library it should be an  
explicit choice of progB's programmer.

> The only real needs is to have something that automatically
> download/build/install dependency! AND WE HAVE IT: godi!

The problem for me is that godi is both locally and remotly  
centralized. Actually what I want is a little godi that I manage  
myself for each of my projects. Let's be clear I actually also think  
that direct source integration is not the best idea, but currently it  
is what makes my life the simplest.  I wouldn't mind not *directly*  
integrate the sources but instead pointers to module downloads if  
that allows me to easely regenerate/upgrade the modules.

In some sense I want my projects to be -- modulo automatic downloads  
of modules -- without free variables, self-contained, they should be  
self-describing. The only untold prerequisite should be the ocaml dev  
tools (and even...). The rest should be taken care of automatically.  
I think that a tandem ocamlbuild/caml-get could go much more in that  
direction, especially because, compared to godi, it would make the  
system much more distributed.

> Off course, as long as you will think that you must embed  
> everything, you
> won't need to learn godi (which is very simple) and you won't  
> evolve on
> this point.

Well I used at some point. But for some reason -- I don't remember  
exactly -- it was getting too much in my way and I stopped using it.

Anyway even if you use godi I think that there are many advantages to  
make libraries smaller and push them toward atomic modules: they  
reveal the real dependencies, they are easier to maintain and it may  
be easier to find new maintainers for orphaned modules. A developer  
may find it an achievable task to maintain a single module he is  
interested in but may shun in front of a cathedral-like library.

Best,

Daniel

  parent reply	other threads:[~2007-09-26 12:22 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-09-25 18:53 [ANN] OCaml Reins 0.1 - Persistent Data Structure Library Mike Furr
2007-09-25 19:14 ` [Caml-list] " Daniel Bünzli
2007-09-25 19:30   ` Mike Furr
2007-09-25 22:16     ` Cherry-picking modules (was Re: [Caml-list] [ANN] OCaml Reins 0.1 - Persistent Data Structure Library) Daniel Bünzli
2007-09-25 23:33       ` Cherry-picking modules (was " Sylvain Le Gall
2007-09-26  6:41         ` [Caml-list] " skaller
2007-09-26  7:22         ` Daniel Bünzli
2007-09-26  8:19           ` skaller
2007-09-26  8:30             ` Daniel Bünzli
2007-09-26  8:58               ` skaller
2007-09-26  9:49                 ` Daniel Bünzli
2007-09-26 10:26           ` Sylvain Le Gall
2007-09-26 11:45             ` [Caml-list] " Jim Miller
2007-09-26 12:37               ` Sylvain Le Gall
2007-09-27 10:11               ` [Caml-list] " Richard Jones
2007-09-26 12:22             ` Daniel Bünzli [this message]
2007-09-26 12:58             ` skaller
2007-09-26 16:47             ` Sylvain Le Gall
2007-09-26 22:38             ` [Caml-list] " Vincent Aravantinos
2007-09-26 22:41               ` Vincent Aravantinos
2007-09-26  6:19       ` Cherry-picking modules (was Re: [Caml-list] " skaller
2007-09-26 15:08         ` Michael Furr
2007-09-26 17:12           ` skaller
2007-09-26 17:53             ` Mike Furr
2007-09-26 19:16               ` skaller
2007-10-05 14:42               ` Adrien
2007-10-05 14:58                 ` Cherry-picking modules (was Re: [Caml-list] [ANN] OCaml Reins 0.1- " Christoph Bauer
2007-10-05 15:21                   ` Adrien
2007-10-05 19:45                     ` Cherry-picking modules (was Re: [Caml-list] [ANN] OCaml Reins0.1- " David Allsopp
2007-10-05  3:48         ` Cherry-picking modules (was Re: [Caml-list] [ANN] OCaml Reins 0.1 - " Nathaniel Gray
2007-09-26  7:03       ` Maxence Guesdon
2007-09-26  7:44         ` skaller
2007-09-26  8:53           ` Maxence Guesdon
2007-09-26 10:05             ` Daniel Bünzli
2007-09-26  8:17         ` Daniel Bünzli
2007-09-26 15:32       ` Michael Furr
2007-09-26 15:50         ` Vincent Aravantinos
2007-09-26 16:42           ` Cherry-picking modules (was " Sylvain Le Gall
2007-09-26 17:38             ` [Caml-list] " skaller
2007-09-26 17:57             ` Vincent Aravantinos
2007-09-26 17:22         ` Cherry-picking modules (was Re: [Caml-list] " skaller
2007-09-26 18:17         ` Daniel Bünzli
2007-09-26 18:45           ` Mike Furr
2007-09-26 19:21           ` skaller
2007-09-26  5:51 ` ExtLib, etc. " David Teller
2007-09-26 20:37 ` [Caml-list] [ANN] OCaml Reins 0.1 - Persistent Data Structure Library Mike Furr

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=45E37235-E843-4A27-95FF-88C41E5A3DCC@epfl.ch \
    --to=daniel.buenzli@epfl.ch \
    --cc=caml-list@inria.fr \
    --cc=sylvain@le-gall.net \
    /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).