
1 Nov
2010
1 Nov
'10
12:28 p.m.
On Monday 01 November 2010 16:59:33, Angel Alonso wrote:
Hi,
I have the following piece of code:
n = 3 case n of 3 -> "Something" 4 -> "Something" _ -> "Other"
Is it possible to shorten the case statement into something like this?:
n = 3 case n of 3 or 4 -> "Something" _ -> "Other"
No, case does a pattern match. You can do case n of _ | n `elem` [3,4] -> "Something" | otherwise -> "Other" however, which becomes really useful if you have case expression of pat1 | cond11 -> thing11 | cond12 -> thing12 | otherwise -> thing1Other pat2 | cond21 -> thing21 ...
Thanks.
-- Angel Alonso