caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
* RE: Why is Ocaml better than Java (WAS: [Caml-list] ocaml complexity)
@ 2001-06-08 10:15 Dave Berry
  0 siblings, 0 replies; 7+ messages in thread
From: Dave Berry @ 2001-06-08 10:15 UTC (permalink / raw)
  To: Mattias Waldau, caml-list; +Cc: leary, Jonathan Coupe

I've spent the last six months actively recruiting C++ programmers.
There are many C++ programmers out there, and they are very much in
demand.  The notion that "nobody writes applications using C/C++" is
simply wrong.  Also, the "open source" community can't be so easily
dismissed, as OCaml is more likely to make headway with these users than
commercial users (at present).

That said, there are other major languages used for writing
applications, such as VB, Delphi and Java.  Comparisons between these
and OCaml would be a good idea.  

Dave.


-----Original Message-----
From: Mattias Waldau [mailto:mattias.waldau@abc.se]
Sent: 08 June 2001 11:06
To: caml-list@inria.fr
Cc: leary@nwlink.com; Jonathan Coupe
Subject: Why is Ocaml better than Java (WAS: [Caml-list] ocaml
complexity)


> How much time and money do development teams spend creating and
tracking
> down memory management errors in C and C++ starting on day one?  At
least
> some of the benefits are immediate and ongoing.

Why this obsession comparing Ocaml with C/C++? C/C++ isn't used out
there
except for Linux-development, low-level programming and embedded
development.

No one writes applications using C/C++, they use Java, Visual Basic.
Some
open source developers use Python, PHP and similar. Some use Fortran and
Delphi.

Talking about memory management with a programmer using anything else
than
C/C++ is a waste of time.

The real questions is how to convince a Java-programmer to start using
Ocaml.

The arguments I can list is:
- speed
- polymorphism, no casting needed (will be solved in next generation of
Java, so this
argument will disappear)
- closures (however can always be programmed using local class with
()-method)
- better typechecking makes higher order functions simple to use
(however, I
  think that a local class in Java will be as good)
- compact programs (Java programs are very long)
- easy integration with C (easy in VB, I haven't tried it in Java)

Plz help me with more arguments
/mattias

-------------------
Bug reports: http://caml.inria.fr/bin/caml-bugs  FAQ:
http://caml.inria.fr/FAQ/
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/
To unsubscribe, mail caml-list-request@inria.fr  Archives: http://caml.inria.fr


^ permalink raw reply	[flat|nested] 7+ messages in thread
* Re: Why is Ocaml better than Java (WAS: [Caml-list] ocaml complexity)
@ 2001-06-11 19:36 Jean-Marc Eber
  0 siblings, 0 replies; 7+ messages in thread
From: Jean-Marc Eber @ 2001-06-11 19:36 UTC (permalink / raw)
  To: Pierre Weis, Mattias Waldau; +Cc: caml-list, leary, jonathan

There is another argument in favour of FP (more precisely in favour
of polymorphism + type synthesis) that is, I think, often not enough
emphasised even if, unfortunately, it also only works "in the large".

It's the easiness with which
you can *modify* a big piece of code. More precisely, I'm speaking here
about code that is maintained over many years (say 10 or 15 years) and
constantly
"updated" to work under new circumstances.  Most of the time, this means in
fact a
"generalisation" of the software. A typical example is for instance a
"program" that manipulates, say, floats and is generalised for manipulating
sets of
floats (typically represented as lists). The old case being just the
particular
case of a singleton list.

When you are doing this kind of "software upgrade" with, say, OCaml, it
appears often that you just have to change and adapt the two ends of your
treatment
chain, the intermediary steps "adapting" automatically thanks to the type
unifier.
It's the possibility to do minimal explicit type annotation of your source
code (with
type security albeit of course) that gives incredible flexibility.

Even after a few years of FP programming, I'm still fascinated by the
easiness of patching for instance the OCaml compiler itself (not a small
piece of
code indeed!) by chirurgical minimal source code modifications (replace a
simple value by a tuple etc…).

I miss a FP textbook (but perhaps I'm wrong and someone on this list knows
one) that not only explains that it is easy, sure etc… to write programs in
FP,
but that shows how easy one can *transform* a FP program, by keeping the
"illusion" (thanks to the type unifier) of doing only a minimal change.


Jean-Marc Eber
LexiFi Technologies
17, square Edouard VII
F-75009 Paris - France
tél : 33 1 53 43 92 48
fax: 33 1 53 43 94 94
email: jeanmarc.eber@lexifi.com


-------------------
Bug reports: http://caml.inria.fr/bin/caml-bugs  FAQ: http://caml.inria.fr/FAQ/
To unsubscribe, mail caml-list-request@inria.fr  Archives: http://caml.inria.fr


^ permalink raw reply	[flat|nested] 7+ messages in thread
* Re: [Caml-list] ocaml complexity
@ 2001-06-08  9:41 leary
  2001-06-08 10:05 ` Why is Ocaml better than Java (WAS: [Caml-list] ocaml complexity) Mattias Waldau
  0 siblings, 1 reply; 7+ messages in thread
From: leary @ 2001-06-08  9:41 UTC (permalink / raw)
  To: Jonathan Coupe; +Cc: caml-list

On Thu, Jun 07, 2001 at 07:29:27PM +0100, Jonathan Coupe wrote:
> 1. Perl was perceived by the adopters who gave it critical mass as being
> fundamentally like the languages they already knew (bash, C, Awk) It was a
> low risk, low effort, low fear choice.

A Hitchhiker's Guide to type theory (and all the other alien things my eyes
glaze over at on this list) aimed at the unwashed masses would go a long
way to making OCaml (and functional programming in general) more
accessible.  Did I pass over one somewhere?

> 2. Perl is aimed most of all at small projects. The risk of trying new tools
> in this space is low - throwing away a 200 lines of code is annoying, but
> not job threatening. And benefits are quickly perceiveable. Ocaml's best use
> is probably larger projects beyond the scope of scripting languages.
> Throwing a way an even quarter completed project is likely to mean the loss
> of several thousand lines of coding effort, and you're unlikely to have
> proveable benefits until the end of the first project, which is more likely
> to be months, not days or hours, after starting work.

How much time and money do development teams spend creating and tracking
down memory management errors in C and C++ starting on day one?  At least
some of the benefits are immediate and ongoing.

> 
> 3. Perl's regexp gave it a decisive edge in several rapidly expanding
> niches.

And OCaml has features which give it a decisive edge in markets too big to
be called mere niches.

> 4. Its easy to perceive Perl's strengths from an initial examination, and
> perhaps harder to pick up on its weaknesses.

I can say exactly the same of OCaml.

-------------------
Bug reports: http://caml.inria.fr/bin/caml-bugs  FAQ: http://caml.inria.fr/FAQ/
To unsubscribe, mail caml-list-request@inria.fr  Archives: http://caml.inria.fr


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2001-06-11 18:26 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-06-08 10:15 Why is Ocaml better than Java (WAS: [Caml-list] ocaml complexity) Dave Berry
  -- strict thread matches above, loose matches on Subject: below --
2001-06-11 19:36 Jean-Marc Eber
2001-06-08  9:41 [Caml-list] ocaml complexity leary
2001-06-08 10:05 ` Why is Ocaml better than Java (WAS: [Caml-list] ocaml complexity) Mattias Waldau
2001-06-08 13:31   ` Pierre Weis
2001-06-08 16:37     ` William Chesters
2001-06-08 21:39   ` Brian Rogoff
     [not found]   ` <Pine.BSF.4.21.0106081430070.27414-100000@shell5.ba.best.co m>
2001-06-08 22:16     ` Chris Hecker

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).