
The problem there is if you add a new color before "RED". I'd do: data Color = RED | BLUE | YELLOW deriving (Show, Enum, Bounded) allColors :: [Color] allColors = [minBound..maxBound] tom
El 14 nov 2015, a las 14:12, Francesco Ariis
escribió: On Sat, Nov 14, 2015 at 07:56:45PM +0100, Kees Bleijenberg wrote: In this piece of code
data Color = RED | BLUE | YELLOW
allColors :: [Color]
allColors = [RED, BLUE, YELLOW]
I have to remeber that if I add a Color, I have to add the color in allColors too.
Is there no better way to add all possible colors in allColors?
Yes, if you make Color instance of Enum. E.g.:
data Color = RED | BLUE | YELLOW deriving (Show, Enum) allColors = enumFrom RED _______________________________________________ Beginners mailing list Beginners@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/beginners