caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Xavier Leroy <Xavier.Leroy@inria.fr>
To: caml-list@inria.fr
Subject: Re: [Caml-list] OCaml maintenance status / community fork (again)
Date: Sat, 10 Dec 2011 15:45:04 +0100	[thread overview]
Message-ID: <4EE37070.4010702@inria.fr> (raw)
In-Reply-To: <55531934-37A5-4CC5-AB67-20CE4CCE8269@googlemail.com>

On 12/08/2011 10:10 AM, Benedikt Meurer wrote:

> Opening up the development of OCaml is a great suggestion, for
> example. Personally I'd even suggest to disconnect OCaml and INRIA,
> with an independent team of core maintainers (with appropriate spare
> time and knowledge). INRIA would still contribute to OCaml, but no
> longer control OCaml.

Oh, my!  I go underwater for one week, first preparing a two-days training
course then delivering it deep inside an Airbus factory (without Wifi of
course so I had to read all that angst on my iPhone), and voila it's Arab
spring on the caml-list :-)

This discussion started on the wrong foot, and I don't see how I could
seriously consider Benedikt's plans given the amount of flaming and trolling
that surround it.  Benedikt, you should realize that your first message was
aggressive, even taking German style into account, and that your second is
offensive.  You barking louder isn't going to make me listen more.  For
instance, here you're aiming for the jugular (and missing):

> For example, have a look at PR/3746, a great example. It took almost
> 4 years(!) to update the ARM port to softfp (and EABI). At the time
> the issue was finally fixed, most ARM application boards were
> already shipping with VFP, so the port is lacking behind several
> years.

It is a great example indeed, but of my dedication to supporting OCaml in
the long run.  Yes, it took a long time, first because adapting ocamlopt to
a soft-FP model was absolutely not obvious (the code generator really wants
FP regs to hold FP values), second because I had to wait a long time before
an appropriate development and testing environment was available (namely,
Debian ARM EABI running inside QEMU), third because nobody really cared.
Your average maintainer would have given up at that point and canceled the
ARM port of OCaml because ARM's floating-point is a mess.  I didn't and
spent one full week of my summer vacations recoding the ARM port instead.
I'm quite happy with the result, thank you very much, and disagree with your
"lacking behind" claim -- the only way that this ARM port can live in the
long run (and I definitely care, as my CompCert project needs OCaml on ARM)
is to stick with the lowest common denominator, namely soft FP.

> The relevant bug report PR/5404, which includes a backward
> compatible patch, is already waiting for a sign of life for 3 weeks
> now (maybe wait another 4 years to get the port fixed).

More bile.  What's so urgent about it?  The next release of OCaml is 3-6
months in the future; your suggestion will be examined by then.  You know,
some people have busy professional lives. I can only devote 1 to 2 days per
months to OCaml maintenance, and would prefer to spend them on technical
work rather than on massaging egos or putting out the fires that you light
up on this list.

Having missed the jugular, you then aim for the groin:

> While we don't have a Drepper here in OCaml land (yet?) [...]

It's funny you mention Ulrich Drepper: I worked with him in the late 90's
integrating LinuxThreads version 1 into glibc, and he was courteous, to the
point, and frighteningly efficient.  Draw your own conclusions.

Enough of that: my physician is already concerned about my blood pressure,
and this discussion is making me grow a stomach ulcer on top.  So, let me
close with a few general messages to the esteemed Caml community.

1- Count your blessings and don't be ungrateful.  With the exception of the
Caml consortium members, no one is paying for the work of the Caml core
development team, yet several of you have demands that are ridiculous even
if you were paying customers of a commercial product.  (Minutes of the
internal discussions of the development team??  What's next, a live video
feed from my bathroom?)

2- As pointed out already in this discussion, it's not on the Caml compiler
that community efforts are most needed.  For example, the most impactful
action that his community could take, in my opinion, is to adopt and embrace
a common packaging system like Cabal for Haskell.

3- I am not impressed by the ability of the Caml community to do actual
community work.  We have N >= 2 (often N >> 2) independent implementations
of many things but a definite lack of convergence.  For instance, I admire
Gerd Stolpmann's and Sylvain Le Gall's efforts on the packaging front, but
see very few people actually joining these efforts.  For another example,
the core Caml development team sometimes asks for testing and opinions on
new directions (e.g. I on the x86-32bits-SSE2 code generator, or Jacques
Garrigue on GADT prototypes) and response rate is very low.  It feels like
herding cats.

4- Yes, we obviously have problems with PR triaging, in part because Mantis
makes this task more bureaucratic than strictly necessary, but more
importantly because it is often hard to guess who cares about this or that
suggestion, or even what problem it is supposed to address.  Volunteers
could greatly help by simply commenting on the PRs in Mantis, to express
support or disagreement, or to ask for clarifications.

5- Before embarking on patching the core Caml distribution, it wouldn't hurt
to ask (privately) where the priorities are.  For instance, I don't see the
point for a linear-scan allocator (Benedikt Meurer) or more efficient
compilation of value let-rec (Fabrice le Fessant), but anyone who would come
up with a GHC-quality function inliner would be welcome like the Messiah.
Likewise, for many years I've been looking for developers to work on the
Windows port(s) of OCaml and never found any.  Finally, at the latest OCaml
consortium meeting, the idea of splitting Camlp4 off the core distribution
was floated around; volunteers to take over its maintenance would be most
welcome.

All right.  Let me stop here and pray for constructive, non-knee-jerk reactions.

- Xavier Leroy




  parent reply	other threads:[~2011-12-10 14:47 UTC|newest]

Thread overview: 78+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-12-08  9:10 Benedikt Meurer
2011-12-08  9:54 ` Alain Frisch
2011-12-08 10:28   ` Benedikt Meurer
2011-12-08 10:46     ` Alain Frisch
2011-12-08 11:08       ` Benedikt Meurer
2011-12-08 16:42       ` Fabrice Le Fessant
2011-12-08 10:47     ` ivan chollet
2011-12-08 14:07       ` oliver
2011-12-08 11:11     ` Pierre-Alexandre Voye
2011-12-08 18:18       ` Török Edwin
2011-12-09 21:42         ` oliver
2011-12-08 10:16 ` Gabriel Scherer
2011-12-08 11:07 ` Stéphane Glondu
2011-12-09  2:11 ` Jacques Garrigue
2011-12-09 10:37   ` Jérémie Dimino
2011-12-09 11:03     ` Gabriel Scherer
2011-12-09 11:17       ` Stefano Zacchiroli
2011-12-09 11:50         ` Jonathan Protzenko
2011-12-09 12:36           ` Alain Frisch
2011-12-09 23:22         ` Goswin von Brederlow
2011-12-09 22:33       ` oliver
2011-12-09 14:24     ` Benedikt Meurer
2011-12-09 17:00       ` Mehdi Dogguy
2011-12-09 17:36         ` Benedikt Meurer
2011-12-09 17:45           ` Mehdi Dogguy
2011-12-09 23:24             ` Goswin von Brederlow
2011-12-10  9:31               ` Benedikt Meurer
2011-12-10 14:45 ` Xavier Leroy [this message]
2011-12-10 15:58   ` Benedikt Meurer
2011-12-12 10:21     ` Xavier Leroy
2011-12-12 10:59       ` Benedikt Meurer
2011-12-12 12:20         ` Mehdi Dogguy
2011-12-12 15:17           ` Goswin von Brederlow
2011-12-19  4:09           ` Romain Beauxis
2011-12-19 17:35             ` Alain Frisch
2011-12-12 12:57         ` Gerd Stolpmann
2011-12-10 17:06   ` Török Edwin
2011-12-10 18:28   ` Jérémie Dimino
2011-12-10 18:34     ` Wojciech Meyer
2011-12-10 19:10       ` Wojciech Meyer
2011-12-10 20:55         ` Jérémie Dimino
2011-12-10 21:40           ` [Caml-list] Camlp4/p5 type reflection [was: OCaml maintenance status / community fork (again)] Wojciech Meyer
2011-12-10 23:34             ` Gabriel Scherer
2011-12-11  0:47               ` [Caml-list] Camlp4/p5 type reflection [ Wojciech Meyer
2011-12-11 11:19                 ` Gabriel Scherer
2011-12-11 18:14                   ` Jérémie Dimino
2011-12-11  9:04               ` [Caml-list] Camlp4/p5 type reflection [was: OCaml maintenance status / community fork (again)] Stéphane Glondu
2011-12-11  9:36                 ` Török Edwin
2011-12-11 10:29                 ` Gabriel Scherer
2011-12-11 11:23                   ` Gerd Stolpmann
2011-12-11 11:38                     ` Gabriel Scherer
2011-12-11 10:20               ` Fabrice Le Fessant
2011-12-11 10:47                 ` Gabriel Scherer
2011-12-11 13:27               ` Alain Frisch
2011-12-11 13:35                 ` Gabriel Scherer
2011-12-11 13:42                   ` Alain Frisch
2011-12-11 13:36                 ` Arnaud Spiwack
2011-12-11 13:46                 ` Stéphane Glondu
2011-12-10 23:28   ` [Caml-list] OCaml maintenance status / community fork (again) Jesper Louis Andersen
2011-12-11 11:02     ` Gerd Stolpmann
2011-12-13 19:36       ` oliver
2011-12-14 12:13         ` Gerd Stolpmann
2011-12-16 10:03           ` Stéphane Glondu
2011-12-11 13:33   ` Goswin von Brederlow
2011-12-11 13:59     ` [Caml-list] Community distribution [was: OCaml maintenance status / community fork (again)] Benedikt Meurer
2011-12-12 17:48   ` [Caml-list] OCaml maintenance status / community fork (again) Stéphane Glondu
2011-12-13 20:39     ` [Caml-list] New experimental ARM backend [was: OCaml maintenance status / community fork (again)] Benedikt Meurer
2011-12-14  9:18       ` Mark Shinwell
2011-12-14 21:51         ` Benedikt Meurer
2011-12-18 11:57       ` [Caml-list] " Benedikt Meurer
2011-12-18 13:08         ` Benedikt Meurer
2011-12-18 14:50           ` Alexandre Pilkiewicz
2011-12-18 16:42             ` Benedikt Meurer
2011-12-18 17:23           ` Stéphane Glondu
2011-12-21 10:11             ` [Caml-list] " Benedikt Meurer
2011-12-18 13:16         ` [Caml-list] " Benedikt Meurer
2011-12-17 18:36   ` [Caml-list] OCaml maintenance status / community fork (again) Stéphane Glondu
2011-12-18  4:25     ` Till Varoquaux

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=4EE37070.4010702@inria.fr \
    --to=xavier.leroy@inria.fr \
    --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).