From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (from weis@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id JAA04013 for caml-redistribution; Wed, 19 Nov 1997 09:02:19 +0100 (MET) 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 QAA20242 for ; Tue, 18 Nov 1997 16:13:34 +0100 (MET) Received: from cri.ens-lyon.fr (cri.ens-lyon.fr [140.77.1.32]) by nez-perce.inria.fr (8.8.7/8.8.5) with ESMTP id QAA05568 for ; Tue, 18 Nov 1997 16:12:56 +0100 (MET) Received: from gerland (gerland [140.77.191.105]) by cri.ens-lyon.fr (8.8.5/8.8.1) with SMTP id QAA15525; Tue, 18 Nov 1997 16:12:28 +0100 (MET) Date: Tue, 18 Nov 1997 16:12:25 +0100 (MET) From: David Monniaux X-Sender: dmonniau@gerland To: Pascal Zimmer cc: caml-list@inria.fr Subject: Re: Exceptions polymorphes In-Reply-To: <199711181357.OAA02954@dragon.ens-lyon.fr> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: weis [ Why exceptions can't be polymorphic... ] On Tue, 18 Nov 1997, Pascal Zimmer wrote: > Comme les exceptions exn sont un type comme un autre, je ne vois pas de > raison theorique empechant ce genre de declaration. Quelle serait dans ce cas la semantique de: exception Found of 'a;; try raise (Found 1) with Found x -> print_string;; Pour que cela reste type-safe, il faudrait que l'on teste si les parties polymorphes de l'exception renvoyee sont bien compatibles avec les contraintes de types des variables du pattern-matching. Cela revient a implementer un peu de la surcharge dynamique. (Sauf erreur de ma part a faire reparer par les experts.)