caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Michael Vanier <mvanier@cs.caltech.edu>
To: jhw@wetware.com
Cc: caml-list@inria.fr
Subject: Re: [Caml-list] objective caml and industry
Date: Thu, 29 Aug 2002 15:57:53 -0700	[thread overview]
Message-ID: <200208292257.g7TMvrJ10800@orchestra.cs.caltech.edu> (raw)
In-Reply-To: <D4A8407A-BB7F-11D6-9803-000502DB38F5@wetware.com> (message from james woodyatt on Thu, 29 Aug 2002 11:47:55 -0700)


> Date: Thu, 29 Aug 2002 11:47:55 -0700
> From: james woodyatt <jhw@wetware.com>
> 
> I promise not to be broken record about this, but there are some things 
> holding Objective Caml back from being an optimal language choice for 
> large industrial applications development.  I don't think any of the 
> open problems in the research of mixin modules are on the list.
> 

[good reasons omitted]

> + Stupidity.  Objective Caml's popularity in academia is a curse as 
> well as a blessing.  For every coder like me who wonders if he should 
> rather have gone into academia, industry has a hundred coders who think 
> career academics are a fat lot of pencil-necked geeks who can't get 
> "real" programming jobs.  This is why industry continues to be 
> populated with idiots who think the reason Java programs so often 
> perform badly is the garbage collector.  These are also the same people 
> who will tell you that the syntax of Objective Caml is intolerably 
> bizarre, while simultaneously raving about the elegance of C#.  (I'm 
> not bitter.  I'm not bitter.)
> 

Now you're getting close to the real reason.  You could cast this in a less
negative light by noting that ocaml has a long learning curve, even for
programmers who know lots of other languages.  There are simply a lot of
unfamiliar features in ocaml for the vast majority of programmers.

However, I don't think you're being negative enough ;-)  In my experience,
most programmers react to anything resembling functional programming as if
it were made out of kryptonite.  The reason for this is that it forces them
to think in a different way than they're used to, and the resistance this
generates, even among otherwise very proficient coders, is nothing short of
astounding.  Consider that object-oriented programming has been around
since around 1967 (simula) and yet it took more than twenty years to become
mainstream.  And OO is a *much* less radical departure from ordinary
imperative programming than functional programming is.  FP has been around
since 1960 (lisp) and is *still* considered to be radical!  You can't
overestimate how conservative the community of programmers is.  We teach
scheme as an introductory programming language at Caltech, and we get a
*lot* of resistance even from supposedly open-minded freshmen (most of whom
know C and thus think they know the "right" way to program).  Also, the
average programmer, if he's even heard of functional programming (>99% of
them haven't) is convinced that it's incredibly inefficient and therefore
not worth learning.

Change takes time.  I think chasing after industry acceptance of ocaml is
the wrong strategy.  The right strategy is a grass-roots effort (building
up the language libraries, trying to attract the best hackers and using
ocaml in university courses).  This approach has worked well for python,
and I think it will work well for ocaml as well.

Mike
-------------------
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-08-30 10:07 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-08-27  3:33 [Caml-list] mixin modules paper and future? Chris Hecker
2002-08-28  8:43 ` Tom Hirschowitz
2002-08-28 19:25   ` Chris Hecker
2002-08-29 10:11     ` M E Leypold @ labnet
2002-08-29 18:47       ` [Caml-list] objective caml and industry james woodyatt
2002-08-29 22:57         ` Michael Vanier [this message]
2002-08-29 23:52           ` james woodyatt
2002-08-30 13:13           ` Vitaly Lugovsky
2002-08-30 23:23             ` Michael Vanier
2002-08-30  2:25         ` Chris Hecker
2002-08-30 18:14           ` Jonathan Coupe
2002-09-01  9:18             ` What kind of industry do you mean? (Was: [Caml-list] objective caml and industry) Mattias Waldau
2002-09-01 20:15               ` Markus Mottl
2002-09-01 21:10                 ` [Caml-list] wxOCaml? Dave Mason
2002-09-02  6:23                 ` [Caml-list] Re: What kind of industry do you mean? (Was: objective caml and industry) Michaël Grünewald
2002-09-02 12:43               ` What kind of industry do you mean? (Was: [Caml-list] " Alessandro Baretta
2002-09-02 22:58                 ` Gerd Stolpmann
2002-09-03  6:58                   ` [Caml-list] Re: An XML standard API? (was:What kind of industry do you mean?) Alessandro Baretta
2002-09-02 18:15               ` What kind of industry do you mean? (Was: [Caml-list] objective caml and industry) Oleg
2002-08-30 18:14           ` [Caml-list] objective caml and industry Jonathan Coupe
2002-08-31  2:26         ` John Max Skaller
2002-09-02 18:38           ` Oleg
2002-08-30  2:21       ` [Caml-list] mixin modules paper and future? Chris Hecker
2002-08-30 18:15 [Caml-list] objective caml and industry Jonathan Coupe
2002-08-30 23:37 ` Chris Hecker

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=200208292257.g7TMvrJ10800@orchestra.cs.caltech.edu \
    --to=mvanier@cs.caltech.edu \
    --cc=caml-list@inria.fr \
    --cc=jhw@wetware.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).