
11 Nov
2015
11 Nov
'15
5:01 p.m.
On 2015-11-11 22:12, Dennis Raddle wrote:
f k m = case M.lookup k m of Nothing -> Nothing Just xs -> listToMaybe xs
But the case "Nothing -> Nothing" is suspicious... seems like that's always a clue some typeclass could simplify it. Eventually I figured out
f k = join . fmap listToMaybe . M.lookup k
The 'Nothing -> Nothing' thing may also be a good hint that using the Maybe monad would be useful. Your function can also be defined as f k m = M.lookup k m >>= listToMaybe -- Frerich Raabe - raabe@froglogic.com www.froglogic.com - Multi-Platform GUI Testing