From: Mike Furr <furr@cs.umd.edu>
To: caml-list List <caml-list@inria.fr>
Subject: Re: Cherry-picking modules (was Re: [Caml-list] [ANN] OCaml Reins 0.1 - Persistent Data Structure Library)
Date: Wed, 26 Sep 2007 14:45:58 -0400 [thread overview]
Message-ID: <46FAA8E6.3090501@cs.umd.edu> (raw)
In-Reply-To: <E9D2CEC7-978F-4058-92D4-7CB432A0C048@epfl.ch>
Daniel Bünzli wrote:
>> But you should start by raising the bar for re-use, not lowering it.
>
> I don't know how I should interpret this (I don't understand the meaning).
I only meant that we should strive to use the "right" solution, even if
that means a little more work for the time being since it will hopefully
improve things in the long run.
> For me the bar is too high for sharing. We need more lightweight ways of
> doing so, let the real bazar be and eventually good components will be
> selected. Maybe if there had been a convenient, agreed bupon,
> module-based, *localized* (in the sense not system wide) and distributed
> package system you wouldn't be the the xth person to implement avl
> trees. For example go look into Camomile there's an implementation there.
Its hard for me to conceptualize how such a distributed system would
work and so I can't really comment if it would in fact be a better
system. However, one problem I wanted to tackle was that while I would
be the xth person to implement avl trees, there will be NO x+1th person.
Reins is one (possible) solution to that.
> But I agree with you tight coupling can also be beneficial, it's a
> trade-off. However maybe (I don't know) reins could have been split
> w.r.t to the different kind of semantic data structure (set, list, map).
> It depends on the deal of code sharing that actually occurs between
> them. The unit tests could have been done as a separate project that
> requires these smaller packages. etc.
Currently, the unit tests are just part of the build and are not
installed. However, since they are parameterized, perhaps I should
distribute them as a second (optional) library so that anyone who
implements a data structure which matches the signatures there can use
them too. Thanks for the idea.
> I strongly believe that smaller
> components are more manageable in the long term. Because whenever they
> break or become orphaned it becomes easier for third-parties to
> understand them and maintain them alive.
As a counter point, smaller components may mean that fewer people are
interested in each component and thus are more likely to become orphaned
as individuals than as part of a larger collection. I think your idea
is interesting, but I haven't seen any anecdotal evidence of it actually
being better than the "cathedral" approach. Pointers/references to such
things would be welcome.
> But hey, I don't want to look like I'm grumling about reins, it sure
> looks great and usefull. So I think I better stop this discussion here.
I don't think you are, and in fact, as library designer/maintainer its
great to get feedback on how people feel about the current status quo of
library management. If someone were to build such a distributed
localized module collection, I would love to see the code from reins in
there. In the time being, I think the cathedral approach should work
quite well.
Thanks for the dialogue... and now back to hacking.
-m
next prev parent reply other threads:[~2007-09-26 18:45 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
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 [this message]
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=46FAA8E6.3090501@cs.umd.edu \
--to=furr@cs.umd.edu \
--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