Version française
Home     About     Download     Resources     Contact us    
Browse thread
ergonomie du compilateur
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: David Monniaux <David.Monniaux@e...>
Subject: ergonomie du compilateur
-- VERSION FRANCAISE --
Bonjour à tous,
je trouve un aspect pénible au compilateur Ocaml, ou d'ailleurs au
toplevel, c'est son report d'erreur. En effet, il est quelquefois assez
difficile de retrouver l'origine du problème.
Si les messages du type "Parse error", bien que peu explicites, ne sont
toute de même pas trop pénibles quand on a l'habitude (il suffit
pratiquement de compter les parenthèses!), il n'en est pas de même pour
les messages d'erreur de typage.
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?

-- ENGLISH VERSION --
Hello all,
I find the Ocaml compiler, or the toplevel, sometimes quite tiresome with
its error reporting. It is sometimes difficult to trace the origin of an
error.
While the messages of the "Parse error" kind, if not very explicit, are
not too bothersome because with some experience one can fix that kind of
errors quite easily (most often, just count the parenthesises!), this is
not the case for typing errors.
A typing problem in a line of code often happens not because this line is
buggy, but because some previous line is, from which the types of terms in
the current line have been inferred. Often it's not too difficult to trace
where those inferences took place, but it's sometimes tedious, especially
with recursive functions.
Couldn't the Ocaml compiler be made to have, on request, more verbose
messages on typing errors, including the trace of inferences of the terms
to cause problems?

-- David Monniaux, student at ENS-Lyon
"Si l'informatique marchait, cela se saurait."