A Haskell A Day: Types
Haskell the language has types. Example of defining types:
5 :: Integer 'a' :: Char inc :: Integer -> Integer [1,2,3] :: [Integer] ('b',4) :: (Char,Integer)
Examples of user defined types:
data myBool = False | True data Color = Red | Green | Blue | Indigo | Violet data Point a = Pt a a
Most materials on this page are from: http://www.haskell.org/tutorial/goodies.html
Haskell supports some sequences:
[1..10] → [1,2,3,4,5,6,7,8,9,10] [1,3..10] → [1,3,5,7,9] [1,3..] → [1,3,5,7,9, … (infinite sequence)
some list comprehension stuff. Need to create actual code here.
[ f x | x <- xs ] [ (x,y) | x <- xs, y <- ys ]
Example of defining map.
map :: (a->b) -> [a] -> [b] map f [] = [] map f (x:xs) = f x : map f xs
Question: how to find out what functions are predefined in Haskell?
Example of using map:
map (add 1) [1,2,3] -- returns [2,3,4]
2005-10