| * As far as I can determine, there is no way to check pattern matches
for
|   exhaustiveness.  Coming from OCaml, this feels like losing a
significant
|   safety net!  How do people program so as not to be getting dynamic
match
|   failures all the time?

GHC has -fwarn-incomplete-patterns and -fwarn-overlapped-patterns.  But
the code implementing these checks is old and crufty, and the warnings
are sometimes a bit wrong -- at least when guards and numeric literals
are involved.  I think they are accurate when you are just using
"ordinary" pattern matching.

Cleaning up this bit of GHC is a long-standing to-do item, if anyone
feels motivated to undertake it.  It's a well-defined task, with plenty
of well-written papers explaining how to do it -- but it's tricker than
it seems at first!

Simon
_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to