caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Michael Vanier <mvanier@cs.caltech.edu>
To: daveb@tardis.ed.ac.uk
Cc: erayo@cs.bilkent.edu.tr, daveb@tardis.ed.ac.uk, markus@oefai.at,
	oleg_inconnu@myrealbox.com, caml-list@inria.fr
Subject: Re: [Caml-list] Re: productivity improvement
Date: Sun, 20 Oct 2002 23:11:20 -0700	[thread overview]
Message-ID: <200210210611.g9L6BKO10324@quartet.cs.caltech.edu> (raw)
In-Reply-To: <4.1.20021019205725.01442878@pop3.btclick.com> (message from Dave Berry on Sun, 20 Oct 2002 13:46:47 +0100)


Dave,

I agree with your comments.  I think it's very important that we (ocaml
fans) avoid becoming dogmatic.  I think most of us would agree that we
would rather code in ocaml than in just about any other language.  That
said, the choice of problem is going to make a world of difference in
whether ocaml is really the language of choice.  Some problems are just
going to be more easily solved (or produce better results) in other
languages, and we just have to accept this.  No one tool is perfect for all
tasks.  For instance, trying to use ocaml in domains where C or Fortran
rule (heavy numerical computing on simple data structures) is interesting
but probably doomed to produce inferior results in many cases (unless you
use ocaml as a fancy compiler or partial evaluator that spits out C code,
that is ;-)).  As the ocaml developers have pointed out, when the data
structures become very intricate, then ocaml starts to win in a big way.

As for popularity, I feel that the grassroots approach is best.  Pass the
word about ocaml on to the ten best hackers you know, try to get them
hooked on the language, use it to tackle problems that would be absurdly
hard in other languages (not ones that can be done well in any language),
and publicize your results.  This will work, although it won't work
overnight.  I've already noticed that more and more courses in CS
departments are using ocaml because of its flexibility; this by itself is
going to introduce ocaml to a large number of new students, many of whom
will spread the word to others.

Mike

> Date: Sun, 20 Oct 2002 13:46:47 +0100
> From: Dave Berry <daveb@tardis.ed.ac.uk>
> 
> Eray, I think you misunderstand where I'm coming from.  I would love to see
> more people using ML instead of C++.  I was part of a team that produced
> one of the commercial SML compilers. All three commercial SML compilers
> have failed, partly because it's very difficult to persuade people to
> switch.  People aren't stupid, and they won't switch to a new language
> without some compelling evidence that it gives an advantage.  I believe
> that a 2:1 or 3:1 gain in a meaningful measure -- the best measure being
> overall cost -- would be sufficient to persuade a reasonable number of
> people to switch.  But, we need concrete evidence.  This is hard to obtain,
> because few people have the time to write a project twice, using different
> languages.  What's more, when studies of this sort have been done,
> comparing more conventional languages, the results have shown that the
> choice of language makes little difference to the overall cost of the
> project.  So there's a widespread suspicion of claims that language X or Y
> increases productivity by significant amounts.
> 
> In this context, figures plucked from the air are, at best, not helpful; I
> think they're actually counter-productive.  To an extent, the bigger the
> claims, the more counter-productive they are, because they're easier to
> challenge.  I would rather have one verifiable claim of a 3:1 productivity
> improvement -- which is a pretty big win -- than a hundred unverifiable
> claims of 10:1, 20:1 or even 40:1 gains.  (Given earlier postings on this
> thread, it's worth reiterating that the type of program is also vital --
> e.g. figures for a one-week project may not scale to a ten-year project).
> 
> This thread gave one very useful example: the rewrite of Ensemble.  IIRC,
> this gave a 7:1 gain in LoC over the original C version.  Even if one
> allows for the benefit of writing the program a second time, and for the
> fact that LoC doesn't necessarily correlate directly to development time,
> this is still an impressive figure.
> 
> Way back when this thread started, I quoted another example: Andrew Appel's
> Tiger compiler.  This has three versions, one in C, one in Java, and one in
> SML.  The SML is shorter, but not to such a great extent.  (I need to
> recheck the actual figures).
> 
> Dave.
> 
> 
> 
> -------------------
> To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
> Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
> Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
> 
-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


  reply	other threads:[~2002-10-21  6:45 UTC|newest]

Thread overview: 94+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-07-08 19:53 [Caml-list] " Oleg
2002-07-08 20:14 ` Michael Vanier
2002-07-10 15:50   ` John Max Skaller
2002-07-10 18:56     ` Alessandro Baretta
2002-07-10 19:09       ` Jun P.FURUSE
2002-07-11 23:43         ` Pierre Weis
     [not found] ` <15657.61603.221054.289184@spike.artisan.com>
2002-07-09  4:43   ` [Caml-list] Universal Serializer (was: productivity improvement) Oleg
2002-07-09  7:56     ` Nicolas Cannasse
2002-07-09  7:59     ` Nicolas Cannasse
2002-07-10 16:06       ` John Max Skaller
2002-07-10 22:29         ` Michael Vanier
2002-07-11  8:13           ` Nicolas Cannasse
2002-07-12 12:41           ` John Max Skaller
2002-07-14 12:25             ` [Caml-list] Statically detecting arrays bound exceptions ?? (was: Universal Serializer) Berke Durak
2002-07-14 13:24               ` Alessandro Baretta
2002-07-15  8:23                 ` Xavier Leroy
2002-07-15  8:39                 ` Noel Welsh
2002-07-15 21:22                   ` Oleg
2002-07-15 22:44                     ` Michael Vanier
2002-07-16  6:43                     ` Florian Hars
2002-07-16 20:22               ` [Caml-list] " John Max Skaller
2002-07-16 20:36                 ` Johan Baltié
2002-07-16 20:55                   ` Hao-yang Wang
2002-07-17  8:25                   ` Noel Welsh
2002-07-12  1:41         ` [Caml-list] Universal Serializer (was: productivity improvement) Eray Ozkural
2002-07-12  8:10           ` [Caml-list] OCaml QT bindings Stefano Zacchiroli
2002-07-12 17:30             ` Eray Ozkural
2002-07-12 10:37         ` [Caml-list] Re: productivity improvement Oleg
2002-07-12 11:23           ` Markus Mottl
2002-07-12 11:34             ` Oleg
2002-07-12 11:43               ` Markus Mottl
2002-07-12 12:59                 ` Pierre Weis
2002-07-12 16:42                   ` Markus Mottl
2002-07-14 20:44                 ` Dave Berry
2002-07-14 22:13                   ` Markus Mottl
2002-07-15 16:43                     ` Alwyn Goodloe
2002-07-16 20:14                     ` Dave Berry
2002-07-17  3:21                       ` Eric Merritt
2002-07-15  9:39                   ` Alessandro Baretta
2002-10-15  8:38                   ` Eray Ozkural
2002-10-17 21:27                     ` Dave Berry
2002-10-18  2:48                       ` Eray Ozkural
2002-10-20 12:46                         ` Dave Berry
2002-10-21  6:11                           ` Michael Vanier [this message]
2003-05-10 20:41                           ` Eray Ozkural
2002-07-12 11:43             ` Noel Welsh
2002-07-12 12:10               ` Markus Mottl
2002-07-12 13:44           ` John Max Skaller
2002-07-12 16:19             ` Alan Schmitt
2002-07-12 20:41             ` John Carr
2002-07-13 21:19               ` [Caml-list] Re: productivity improvementu Pierre Weis
2002-07-12 21:24             ` [Caml-list] Re: productivity improvement Brian Smith
2002-10-15  8:57             ` Eray Ozkural
2002-10-15 11:50               ` [Caml-list] eproductivity improvement Alessandro Baretta
2002-07-09 12:45 ` [Caml-list] productivity improvement Basile STARYNKEVITCH
2002-07-09 18:20   ` Shannon --jj Behrens
2002-07-09 19:16     ` Oleg
2002-07-09 20:31       ` Shannon --jj Behrens
2002-07-10 10:02     ` sebastien FURIC
2002-07-10 11:58       ` Dave Mason
2002-07-10 13:11         ` sebastien FURIC
2002-07-10 19:22           ` nadji
2002-07-10 20:15       ` Sieve of Eratosthenes Performance: various languages (Re: [Caml-list] productivity improvement) Oleg
2002-07-10 20:34         ` [Caml-list] " William D. Neumann
2002-07-10 20:47           ` [Caml-list] Re: Sieve of Eratosthenes Performance: various languages Alexander V.Voinov
2002-07-10 21:16             ` William D. Neumann
2002-07-10 20:49           ` [Caml-list] Re: Sieve of Eratosthenes Performance: various languages (Re: [Caml-list] productivity improvement) William D. Neumann
2002-07-11 22:30           ` [Caml-list] Array.resize ? Oleg
2002-07-11 23:06             ` Alessandro Baretta
2002-07-12 13:01               ` John Max Skaller
2002-07-12 18:24                 ` Shawn Wagner
2002-07-11 23:31             ` Markus Mottl
2002-07-12 12:54             ` John Max Skaller
2002-07-12 13:23               ` Olivier Andrieu
2002-07-12 14:05                 ` John Max Skaller
2002-07-12 16:09               ` Brian Rogoff
2002-10-19  9:16                 ` Eray Ozkural
2002-10-19 22:15                   ` [Caml-list] debugger losing contact with debuggee process Lex Stein
2002-10-20 10:06                     ` Pierre Weis
2002-10-21  9:11                     ` Xavier Leroy
2002-10-18  3:05             ` [Caml-list] Array.resize ? Eray Ozkural
2002-10-19  1:51               ` Oleg
2003-05-10 20:24                 ` Eray Ozkural
2002-07-10 20:48         ` Sieve of Eratosthenes Performance: various languages (Re: [Caml-list] productivity improvement) Markus Mottl
2002-07-11  5:53           ` Anton E. Moscal
2002-10-18  3:07           ` Eray Ozkural
2002-07-10 15:39 ` [Caml-list] productivity improvement John Max Skaller
2002-07-11  8:57   ` Nicolas barnier
2002-07-12 12:16   ` [Caml-list] Is this a bug? John Max Skaller
2002-07-12 14:05     ` Xavier Leroy
2002-07-16  3:34   ` [Caml-list] productivity improvement Oleg
2002-10-18  3:13     ` Eray Ozkural
2002-07-15  6:00 [Caml-list] " Ohad Rodeh
2002-07-16 20:18 ` Dave Berry

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=200210210611.g9L6BKO10324@quartet.cs.caltech.edu \
    --to=mvanier@cs.caltech.edu \
    --cc=caml-list@inria.fr \
    --cc=daveb@tardis.ed.ac.uk \
    --cc=erayo@cs.bilkent.edu.tr \
    --cc=markus@oefai.at \
    --cc=oleg_inconnu@myrealbox.com \
    /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).