[Haskell-cafe] Haskell Propaganda

Brandon S. Allbery KF8NH allbery at ece.cmu.edu
Wed Aug 27 17:26:59 EDT 2008


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] allbery at kf8nh.com
system administrator [openafs,heimdal,too many hats] allbery at ece.cmu.edu
electrical and computer engineering, carnegie mellon university    KF8NH




More information about the Haskell-Cafe mailing list