Browse thread
Re: [Caml-list] Pattern matching
-
Luc Maranget
-
Diego Olivier Fernandez Pons
-
Fabrice Le Fessant
-
Diego Olivier Fernandez Pons
-
Nicolas Barnier
- Diego Olivier Fernandez Pons
- Fabrice Le Fessant
-
Nicolas Barnier
-
Diego Olivier Fernandez Pons
-
Fabrice Le Fessant
-
Diego Olivier Fernandez Pons
[
Home
]
[ Index:
by date
|
by threads
]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
| Date: | -- (:) |
| From: | Diego Olivier Fernandez Pons <FernandezPons@i...> |
| Subject: | [Caml-list] Warnings possibles |
La question du filtrage semble tranchée. Essayons une proposition qui
se veut constructive :
- Est-il possible d'avoir un warning quand on masque une variable lors
d'un filtrage ?
- Est-il possible (je veux dire est-ce réalisable ? difficile ? utile
?...) de signaler que deux motifs ne sont pas exclusifs
let f = function
| (0,1) -> 1
| (x,1) -> x
| (1,y) -> y
| _ -> 1
# Attention les motifs (x,1) et (1,y) ne sont pas disjoints par
exemple (1,1)
Je suppose qu'il doit y avoir des problèmes liés au motif universel _
(que l'on pourrait peut-être ignorer)
let f = function (x,y) ->
match (x,y) with
| (0,1) -> 1
| (_,1) -> x
| (1,_) -> y
| _ -> 1
;;
ok !
(la superposition de motifs est ignorée car on utilise _ qui est
ignoré sauf pour le dernier qui assure que tous les cas sont traités)
Peut-être un flag "pedantic" comme en C pour avoir ces avertissements
là ?
Diego Olivier
-------------------
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr