From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (from majordomo@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id CAA22002; Wed, 19 Nov 2003 02:37:29 +0100 (MET) X-Authentication-Warning: pauillac.inria.fr: majordomo set sender to owner-caml-list@pauillac.inria.fr using -f Received: from nez-perce.inria.fr (nez-perce.inria.fr [192.93.2.78]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id CAA21987 for ; Wed, 19 Nov 2003 02:37:28 +0100 (MET) Received: from mail.dcs.qmul.ac.uk (vicar.dcs.qmul.ac.uk [138.37.88.163]) by nez-perce.inria.fr (8.11.1/8.11.1) with ESMTP id hAJ1bS115594 for ; Wed, 19 Nov 2003 02:37:28 +0100 (MET) Received: from xenografia.plus.com ([212.159.85.26] helo=dcs.qmul.ac.uk) by mail.dcs.qmul.ac.uk with asmtp (TLSv1:DHE-RSA-AES256-SHA:256) (Exim 4.24) id 1AMHHb-0005Au-60 for caml-list@inria.fr; Wed, 19 Nov 2003 01:37:27 +0000 Message-ID: <3FBAC938.8080309@dcs.qmul.ac.uk> Date: Wed, 19 Nov 2003 01:36:56 +0000 From: Martin Berger User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4.1) Gecko/20031009 X-Accept-Language: en-us, en MIME-Version: 1.0 To: Caml Mailing List Subject: Re: [Caml-list] GC and file descriptors References: <1069168323.18363.83.camel@pelican> <3FBA4D97.9060309@dcs.qmul.ac.uk> <3FBA6459.3000000@socialtools.net> <20031118202438.A9506@pauillac.inria.fr> In-Reply-To: <20031118202438.A9506@pauillac.inria.fr> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 8bit X-Auth-User: martinb X-DCS-Spam-Score: -2.5 X-clamav-result: clean (1AMHHb-0005Au-60) X-uvscan-result: clean (1AMHHb-0005Au-60) X-Loop: caml-list@inria.fr X-Spam: no; 0.00; caml-list:01 pessaux:01 type-based:01 publi:01 havn't:01 higher-order:01 unions:01 tolerate:01 existential:01 inferred:01 compiler:01 descriptors:01 declaring:01 checking:01 exception:02 Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk > François Pessaux and Xavier Leroy. Type-based analysis of uncaught > exceptions. ACM Transactions on Programming Languages and Systems, > 22(2):340-377, 2000. > http://pauillac.inria.fr/~xleroy/publi/exceptions-toplas.ps.gz i havn't had time to give that paper the proper read it deserves, but the following caught my eye: "to deal properly with higher-order functions, a very rich language for exception declarations is required, including at least exception polymorphism (variables ranging over sets of exceptions) and unions of exception sets [...]. we believe that such a complex language for declaring escaping exceptions is beyond what programmers are willing to tolerate." i'd be happy to have such a language available. anyway, union of exception sets is already present in java, the only novelty would be to abstract over exception sets. but that isn't really formally very different from normal existential or universal quantification. in addition, i assume the programmer does not have to specify exception sets because they can be inferred (in most cases?). in that, exception sets should not be different from the other typing information. in practise, the programmer would use explicit exception specifications only at module boundaries. one of the key problems with exceptions specifications is of course that a single change somewhere in a program may trigger heaps of other code becoming untypable. i can imagine that a simple compiler switch for turning off exception specification checking during development would take away much of the pain here. martin ------------------- 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