caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
* Re:  Irrelevant variables in patterns
@ 1994-05-27 18:58 Damien Doligez
  0 siblings, 0 replies; 16+ messages in thread
From: Damien Doligez @ 1994-05-27 18:58 UTC (permalink / raw)
  To: cr; +Cc: caml-list

La solution serait plutot d'avoir une distinction syntaxique entre
variables et constructeurs (par exemple, les constructeurs commencent
par une majuscule et les variables par une minuscule).

Ca resout le meme probleme qui apparait dans les match.

Malheureusement, ce qui precede est un sujet de flame-wars permanent
parmi les implementeurs de Caml, donc on s'est impose un moratoire
sur le sujet (moratoire que je viens de violer...)




^ permalink raw reply	[flat|nested] 16+ messages in thread
* Re: Irrelevant variables in patterns
@ 1994-05-30 13:15 Judicael Courant
  0 siblings, 0 replies; 16+ messages in thread
From: Judicael Courant @ 1994-05-30 13:15 UTC (permalink / raw)
  To: Xavier.Leroy; +Cc: caml-list



Oui, mais on peut documenter comme ceci :

map (fun (_(*key*), data) -> data) the_a_list

ou alors on pourrait autoriser (mais dans ce cas, il faudrait modifier
la grammaire) :

map (fun (_key, data) -> data) the_a_list

Je serais cependant plus partisant de la premiere solution...  Et puis,
il est toujours possible de n'avoir le warning qu'en option (pour les
programmeurs qui n'aiment pas documenter leurs programmes).

Judicael Courant.




^ permalink raw reply	[flat|nested] 16+ messages in thread
* Irrelevant variables in patterns
@ 1994-05-26 13:03 Judicael Courant
  1994-05-27 18:01 ` Christophe Raffalli
  1994-05-30  8:53 ` Xavier Leroy
  0 siblings, 2 replies; 16+ messages in thread
From: Judicael Courant @ 1994-05-26 13:03 UTC (permalink / raw)
  To: caml-list


Bonjour,

j'ai perdu un (gros) bout de temps sur le (stupide) bug suivant :

j'avais ecrit :

try (f x) with NotFound -> raise toto

au lieu de :

try (f x) with Not_found -> raise toto

Resultat : lorsqu'une exception etait levee dans l'evaluation de (f x),
elle etait toujours rattrappee. Pourtant, si j'avais voulu rattrapper toutes les exceptions, il aurait ete beaucoup plus naturel
d'ecrire :

try (f x) with _ -> raise toto

De maniere generale, le compilateur ne pourrait-il pas fournir un "Warning : irrelevant variable xxx in pattern yyy" lorsque qu'une variable liee dans un motif n'est pas utilisee ?

Judicael Courant.




^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~1994-05-30 17:27 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1994-05-27 18:58 Irrelevant variables in patterns Damien Doligez
  -- strict thread matches above, loose matches on Subject: below --
1994-05-30 13:15 Judicael Courant
1994-05-26 13:03 Judicael Courant
1994-05-27 18:01 ` Christophe Raffalli
1994-05-28 10:16   ` Chet Murthy
1994-05-28 10:36     ` Christophe Raffalli
1994-05-28 10:43       ` Chet Murthy
1994-05-28 11:01         ` Christophe Raffalli
1994-05-28 11:05           ` Chet Murthy
1994-05-28 11:09             ` Christophe Raffalli
1994-05-28 11:08         ` Christophe Raffalli
1994-05-28 11:12           ` Chet Murthy
1994-05-30 14:49         ` John Harrison
1994-05-30 18:20           ` calla
1994-05-30  8:53 ` Xavier Leroy
1994-05-30 17:57   ` Christophe Raffalli

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).