Fredrik Petersson wrote:
welcomeHi there! Iam new to the list so feel free to shout at me when i do wrong! :) Software-designer from sweden, likes fast bikes and metal, thats me, and hi to you all!
no type casting in haskell. and we think of that as a feature, not a bug :-)Yeah ok to the problem, i have this stupid code, [c | (c,i) <- l]
Where (c,i) are a tuple from a (Char,Int) and l is a [(Char,Int)] So far everthings nice but i would like to cast the c to a Sting and add : in front, So if i fry with a list like [('d',3)('f',3)] I end up with "fg" but i want it to look like ":f :g"
piece of cake, huh? Give me a hit or a webpage to read more from...? How do you TypeCast in haskell?
having said that, you can write functions that convert values of one type into values of another. for example:
toString :: Char -> String
toString c = [c]
in Haskell the type String is the same as [Char], i.e. a string is a list of characters.
another useful predefined function is:
concat :: [[a]] -> [a]
that given a list of lists will produce a "flattened" list that contains all the elements, e.g. concat [[1,2],[3,4]] = [1,2,3,4].
in particular when you take 'a' above to be Char you get:
concat :: [String] -> String
which takes a list of strings and gives you back a single string containing all the input strings.
now you can achieve what you wanted as: concat [ ":" ++ toString c ++ " " | (c,i) <- l ]
++ joins two lists into a single list. there are a lot of useful functions in the Prelude.
hope this helped. by the way a better list to post questions when you are stuck with a program is probably [EMAIL PROTECTED], but people will usually reply on either list.
bye iavor
-- ================================================== | Iavor S. Diatchki, Ph.D. student | | Department of Computer Science and Engineering | | School of OGI at OHSU | | http://www.cse.ogi.edu/~diatchki | ==================================================
_______________________________________________ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell