From: John Max Skaller <skaller@ozemail.com.au>
To: caml-list@inria.fr
Subject: Re: [Caml-list] Universal Serializer (was: productivity improvement)
Date: Fri, 12 Jul 2002 22:41:35 +1000 [thread overview]
Message-ID: <3D2ECE7F.5040108@ozemail.com.au> (raw)
In-Reply-To: <200207102229.g6AMTKB22278@orchestra.cs.caltech.edu>
Michael Vanier wrote:
>>You must be an academic.:-) Try between 10:1 and 100:1,
>>*assuming* that any libraries you need are available,
>>and a reasonably complex piece of software.
>>
>
>I agree, but the productivity increase is going to depend a lot on the
>experience and skill of the ocaml programmer. As a newbie, I find myself
>using a lot of lame imperative idioms before discovering more elegant (and
>concise) functional ones.
>
Ocaml does imperative programming better than C and C++ too.
So even your 'lame' imperative code can be produced faster and more
reliably in Ocaml.
Example: values (declared in let bindings) scope better.
Variables (references) must be initialised -- sometimes this
is a pain, but usually it is a bonus.
>You just can't underestimate how difficult it is to find
>bugs in C codes of reasonable size. Such bugs almost never
>happen in Ocaml.
>
>
>Definitely, although the same could be said for java or C#, if by "such
>bugs" you mean memory leaks and memory corruption.
>
Well, if you run java or C#, you still have to cast 'object' down, and
so you can get run-time
errors -- where using Ocaml this class of error cannot happen.
Ocaml run time errors include array (and string) bounds exceptions and
infinite recursions:
static type checking could detect the first, but not the second.
>>The biggest problem in Ocaml is type inference,
>>and the resulting loss of localisation of error diagnostics, but
>>such compile time errors can be resolved *definitely*;
>>that is, you know for sure when you've fixed them
>>(because the compiler stops hassling you).
>>
>
>What do you mean by "loss of localisation of error diagnostics"? Do you
>mean that a type error in one location giving an expression which can still
>compile (but to the wrong type) results in an obscure error message
>elsewhere?
>
Yes.
>I agree that that's occasionally a minor pain, but it's hardly
>in the same league with memory leaks etc.
>
Agree.
>If that's ocaml's biggest problem,
>
It's one of them (IMHO)
>then ocaml is the best computer language I've ever seen.
>
I agree :-)
>Ohhhh.. just imagine if GTK/Gnome/Gui stuff on RH linux
>were written in Ocaml .. it might actually work!
>
>*drool* I would totally *love* to have this.
>
heh :-)
--
John Max Skaller, mailto:skaller@ozemail.com.au
snail:10/1 Toxteth Rd, Glebe, NSW 2037, Australia.
voice:61-2-9660-0850
-------------------
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
next prev parent reply other threads:[~2002-07-12 12:41 UTC|newest]
Thread overview: 92+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-07-08 19:53 [Caml-list] productivity improvement 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 [this message]
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
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
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=3D2ECE7F.5040108@ozemail.com.au \
--to=skaller@ozemail.com.au \
--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