
On Sun, Mar 14, 2010 at 12:53:41PM +0000, Evgenij Merenkov wrote:
Thank you. Didn't know that you can supply type directly to a function, like "f :: Type".
Yes, you can always put a type annotation on any value, it just tells the compiler what type it should be. In this case (minBound :: FigType) is to help out the compiler's type inference, since otherwise it would not know what type minBound should be (it could be any type which is an instance of Bounded). -Brent
From: gale@sefer.org Date: Sun, 14 Mar 2010 13:44:39 +0200 Subject: Re: [Haskell-beginners] Randomly selecting a data constructor To: tom.davie@gmail.com CC: beginners@haskell.org; evgenij1@hotmail.com
Sorry, hit "Send" too soon:
data FigType = TR1 | TR2 | TR3 | TR4 | SQ | L1 | L2 | Z1 | Z2 | Z3 | Z4 | NoFigure deriving (Enum, Bounded) randomFigure :: IO FigType randomFigure = toEnum <$> randomRIO (fromEnum (minBound :: FigType), fromEnum (maxBound :: FigType))
-Yitz _______________________________________________ Beginners mailing list Beginners@haskell.org http://www.haskell.org/mailman/listinfo/beginners
_________________________________________________________________ Your E-mail and More On-the-Go. Get Windows Live Hotmail Free. https://signup.live.com/signup.aspx?id=60969 _______________________________________________ Beginners mailing list Beginners@haskell.org http://www.haskell.org/mailman/listinfo/beginners