caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: "Frédéric Gava" <gava@univ-paris12.fr>
To: <caml-list@inria.fr>
Subject: Re: [Caml-list] Today's inflamatory opinion: exceptions are bad
Date: Fri, 15 Dec 2006 12:13:47 +0100	[thread overview]
Message-ID: <005501c7203a$17fd0b80$3c690b50@mshome.net> (raw)
In-Reply-To: <20061211155513.GA22044@furbychan.cocan.org>

----- Original Message -----
From: "Richard Jones" <rich@annexia.org>
To: "Chris King" <colanderman@gmail.com>
Cc: <caml-list@inria.fr>
Sent: Monday, December 11, 2006 4:55 PM
Subject: Re: [Caml-list] Today's inflamatory opinion: exceptions are bad

>Perhaps though this is an argument that List.find and friends should
>be returning 'a option, not an argument for all exceptions being bad.

Hi all,

There is also many case where exceptions are faster than 'a option.

Could you imagine a program where (/) returns 'int option because 1/0 is
impossible ? Could you benchmark serioulsy a OCaml matrix multiplication
again C where Array.get return 'a option and that you have all the time to
match the result ?

Exceptions are goods for performance, easy to manipulate (except in
tail-recursive functions) and understand. Return all the time 'a option
thinks to me C programs where functions return 1 if it has been well
computed or 0 otherwise (you all the time checked if it is 0 or 1 but with
execption you just write try ... with on the block of functions).

The case of Coq is another thinks because you can restric the cases using
high level specification (and in this case, when you extract the proof in
ocaml code you have "assert false"...an exception...arg.)

Frédéric Gava


  reply	other threads:[~2006-12-15 11:06 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-12-10  1:42 Brian Hurt
2006-12-10  2:40 ` [Caml-list] " skaller
2006-12-10  2:51 ` Martin Jambon
2006-12-10  3:35 ` Chris King
2006-12-10  6:32   ` Jon Harrop
2006-12-10 19:07     ` brogoff
2006-12-10 18:04   ` Richard Jones
2006-12-10 23:27     ` Chris King
2006-12-11 15:55       ` Richard Jones
2006-12-15 11:13         ` Frédéric Gava [this message]
2006-12-11 17:28     ` Mike Lin
2006-12-11 20:09       ` Richard Jones
2006-12-11 23:38   ` Olivier Andrieu
     [not found]   ` <C841DA73-83D4-4CDD-BF4A-EA803C6D6A08@vub.ac.be>
2006-12-23  4:23     ` Ocaml checked exceptions Chris King
2006-12-10  6:30 ` [Caml-list] Today's inflamatory opinion: exceptions are bad malc
2006-12-10  6:36   ` malc
2006-12-10  6:56 ` Jon Harrop
2006-12-10  9:51 ` Andreas Rossberg
2006-12-10 11:00   ` Tom
2006-12-10 11:25     ` Andreas Rossberg
2006-12-10 13:27   ` Jean-Christophe Filliatre
2006-12-10 19:15     ` Haoyang Wang
2006-12-10 21:43       ` Jean-Christophe Filliatre
2006-12-11 13:10       ` Diego Olivier FERNANDEZ PONS
2006-12-10 18:31   ` Serge Aleynikov

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='005501c7203a$17fd0b80$3c690b50@mshome.net' \
    --to=gava@univ-paris12.fr \
    --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;
as well as URLs for NNTP newsgroup(s).