 
            
            
            
            
                4 May
                
                    2014
                
            
            
                4 May
                
                '14
                
            
            
            
        
    
                11:42 a.m.
            
        Hi Alan, Check out these two functions, they point you towards how to write more idiomatic code. They are called smart destructors, google that term for more information: λ> :i maybe maybe :: b -> (a -> b) -> Maybe a -> b -- Defined in `Data.Maybe' λ> :i either either :: (a -> c) -> (b -> c) -> Either a b -> c -- Defined in `Data.Either'