From: Xavier Leroy <Xavier.Leroy@inria.fr>
Message-Id: <199701211033.LAA14208@pauillac.inria.fr>
Subject: Re: ergonomie du compilateur
In-Reply-To: <Pine.GSO.3.95.970115103536.5934B-100000@bellecour> 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)
[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 =E0 une ligne donn=E9e =
non
> pas =E0 cause d'un probl=E8me =E0 cette ligne, mais =E0 cause d'un probl=
=E8me =E0 une
> ligne ant=E9rieure. S'il est souvent assez facile de retrouver o=F9 a =E9=
t=E9 typ=E9
> un terme, cela devient quelquefois difficile, notamment avec les fonctions
> r=E9cursives, 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=F9 il a inf=E9r=E9 les types q=
ui lui
> posent probl=E8me?
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