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 LAA14260 for caml-redistribution; Tue, 21 Jan 1997 11:35:22 +0100 (MET) Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id LAA14212 for ; Tue, 21 Jan 1997 11:33:59 +0100 (MET) Received: from pauillac.inria.fr (pauillac.inria.fr [128.93.11.35]) by concorde.inria.fr (8.7.6/8.7.3) with ESMTP id LAA15641; Tue, 21 Jan 1997 11:33:57 +0100 (MET) Received: (from xleroy@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id LAA14208; Tue, 21 Jan 1997 11:33:58 +0100 (MET) From: Xavier Leroy Message-Id: <199701211033.LAA14208@pauillac.inria.fr> Subject: Re: ergonomie du compilateur In-Reply-To: from David Monniaux at "Jan 15, 97 10:46:39 am" To: David.Monniaux@ens-lyon.fr (David Monniaux) Date: Tue, 21 Jan 1997 11:33:57 +0100 (MET) Cc: caml-list@inria.fr MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Sender: weis [English summary: explaining type inference errors is a great idea, but unfortunately something that no one knowns how to do right -- witness the number of papers published on this topic since 1982.] > En effet, souvent une erreur de typage intervient à une ligne donnée > non pas à cause d'un problème à cette ligne, mais à cause d'un problème à une > ligne antérieure. S'il est souvent assez facile de retrouver où a été typé > un terme, cela devient quelquefois difficile, notamment avec les fonctions > récursives, pour le type de la fonction. > Ne pourrait-on pas faire que, sur demande, le compilateur, lorsqu'il > rencontre une erreur de type, ressorte d'où il a inféré les types qui lui > posent problème? Bonne idee, mais personne ne sait faire. Il y a eu une bonne dizaine d'articles publies la-dessus depuis 1982. Toutes les idees simples se revelent marcher tres mal en pratique. Une bonne reference est l'article de Duggan dans Science of Computer Programming 27(1). - Xavier Leroy