caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Friedman Roy <roy@cs.technion.ac.il>
To: "Frank A. Christoph" <christo@nextsolution.co.jp>
Cc: STARYNKEVITCH Basile <Basile.Starynkevitch@cea.fr>, caml-list@inria.fr
Subject: RE: convincing management to switch to Ocaml
Date: Sun, 15 Aug 1999 11:14:50 +0300 (IDT)	[thread overview]
Message-ID: <Pine.GSO.3.95-heb-2.07.990815110447.28686C-100000@csa.cs.technion.ac.il> (raw)
In-Reply-To: <000a01bee4bc$68ccf640$0150ebca@nextsolution.co.jp>

I currently use OCaml as part of an industrial project, although it is
easier when you have your own startup. At the same time, I am also on the
faculty at the department of computer science at the Technion. From my
experience, when I finally convince students to try OCaml, they learn it
VERY quickly, and usually immediately become OCaml advocates.

I guess the main problem is that university graduates get the wrong
message in all those software engineering courses regarding how to design 
software and what languages should be used. They are basically led to
beleive that good programming prectice == Object Oriented programming ==
C++ or Java. Of course, these students then go to industry, and soon
become the "management" that is hard to convince to try other
approaches/languages.

Roy

> (You have my condolences. :)
> 
> I frequently see people argue that functional languages are too hard to
> understand and use, and that you have to be a guru programmer to use them. I
> am fluent in C++ and I use functional languages because they areeasier to
> use than conventional languages. I don't consider myself an especially good
> programmer, so I need as much help from the programming system as I can get.
> 
> Conventional languages shift all the burden onto the user (= the
> programmer): withoutgarbage collection, he has to do the memory management;
> without parametric polymorphism, he has to remember which type to cast a
> pointer back to; without higher-order functions, he has to duplicate code
> and remember to maintain both versions; without type safety, he has to code
> defensively and there is a greater cognitive burden in general. The user has
> to do all this stuff, so compiling the language itself is easy because, if
> it runs, it's pretty much guaranteed to run fast.
> 
> With typed functional languages, the burden is on the compiler and the
> implementors. The language is more expressive and declarative, so the
> programmer is freer to concentrate on the problem at hand. Let the
> implementor figure out how to compile it well; as a programmer I want _less_
> things to worry about.
> 
> Maybe if I was Linus Torvalds or Xavier Leroy :) or some other world-class
> programmer, I would be using C or C++. It's partly because I'm _not_ that I
> like to use functional languages.
> 
> --FC
> 
> 




  reply	other threads:[~1999-08-22 18:15 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1999-07-28 14:47 STARYNKEVITCH Basile
1999-07-30  9:00 ` Markus Mottl
1999-08-13 10:32   ` John Skaller
1999-08-25  1:51     ` Frank A. Christoph
1999-08-25  3:50       ` John Skaller
1999-08-25  6:34         ` Frank A. Christoph
1999-08-26 18:36         ` Stefan Monnier
1999-08-29  6:08           ` John Skaller
1999-08-27 10:00         ` Andreas Rossberg
1999-08-28  6:24           ` John Skaller
1999-08-30 15:59             ` Sylvain BOULM'E
1999-08-31  5:50             ` Brian Rogoff
1999-08-28 19:51           ` Dave Mason
1999-08-30 19:05             ` Xavier Leroy
1999-08-30  8:02           ` Pierre Weis
1999-08-30 19:35             ` John Skaller
1999-08-31 17:10               ` Pierre Weis
1999-09-03  6:56                 ` John Skaller
1999-08-31 19:03               ` Stefan Monnier
1999-09-03  7:28                 ` John Skaller
1999-08-31  0:13             ` John Prevost
1999-08-31  5:19               ` John Skaller
1999-08-31  6:35                 ` John Prevost
1999-09-03  5:42                   ` John Skaller
1999-08-31 16:24           ` Gerard Huet
1999-07-30 14:42 ` John Skaller
1999-07-30 18:49 ` Gerd Stolpmann
1999-07-30 21:30 ` Francois Rouaix
1999-08-12 10:36 ` Reply to: " Jens Olsson
1999-08-16 18:33   ` Chris Tilt
1999-08-12 12:15 ` Frank A. Christoph
1999-08-15  8:14   ` Friedman Roy [this message]
  -- strict thread matches above, loose matches on Subject: below --
1999-09-07  7:24 TommyHallgren
     [not found] <John Skaller's message of "Tue, 31 Aug 1999 15:19:48 +1000">

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=Pine.GSO.3.95-heb-2.07.990815110447.28686C-100000@csa.cs.technion.ac.il \
    --to=roy@cs.technion.ac.il \
    --cc=Basile.Starynkevitch@cea.fr \
    --cc=caml-list@inria.fr \
    --cc=christo@nextsolution.co.jp \
    /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).