On 2008 Aug 27, at 16:49, Daniel Fischer wrote:
Am Mittwoch, 27. August 2008 22:34 schrieb Aaron Tomb:
When you do use Maybe, you have to explicitly handle the Just and
Nothing cases separately. Pattern matching reminds you that both are
possible. I tend to view fromJust as a function you should only use
if
you're _very_, _very_ sure that the Nothing case is impossible. But,
if so, why are you using a Maybe type in the first place?
Good question. Maybe because you use a function which returns a
Maybe result
but you know in your use case it's always a Just. But then still a
case fun args of
Just val -> use val
Nothing -> error $ LOCATION ++ " Hey, that ought to be impossible! Go
investigate!"
would be cleaner. If fromJust is more efficient and this code is
called many
times in your programme, that could count as a reason.
I have more than once seen a NULL dereference not get caught until
later (admittedly I think most POSIX-like systems unmap page 0 these
days; but think of embedded systems or other non-POSIX environments).
even fromJust gives you more of an ability to track the problem down
in that case.
--
brandon s. allbery [solaris,freebsd,perl,pugs,haskell] [EMAIL PROTECTED]
system administrator [openafs,heimdal,too many hats] [EMAIL PROTECTED]
electrical and computer engineering, carnegie mellon university KF8NH
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe