
Forgot to CC the list. Begin forwarded message:
From: Jack Henahan
Subject: Re: [Haskell-beginners] function defenition. Do I understand it right? Date: July 11, 2011 3:55:13 PM EDT To: Roelof Wobben You're overcomplicating things. Look at splitAt from Data.List:
http://hackage.haskell.org/packages/archive/base/4.1.0.0/doc/html/Data-List....
On Jul 11, 2011, at 3:51 PM, Roelof Wobben wrote:
Hello,
Thanks for the tip. Im stuck now.
I have this :
halve (xs) | length xs'mod'2 == 0 = (take n xs drop n xs) | otherwise = (take n+1 xs drop n+1 xs where n= lenght xs'div'2
main = do putStrLn $ show $ halve [1,2,3,4] putStrLn $ show $ halve [1,2,3]
But now I get this message :
ERROR line 3 - Syntax error in expression (unexpected keyword "where")
Appearently I can't use where here.
How can I solve this ?
Roelof
Date: Mon, 11 Jul 2011 11:44:28 -0400 Subject: Re: [Haskell-beginners] function defenition. Do I understand it right? From: dmcbride@neondsl.com To: rwobben@hotmail.com CC: beginners@haskell.org
For simple snippets like this, you can go to http://codepad.org/ddySVOPr and run your code to see if it works.
And your first version (once corrected for syntax) works on any list length except for empty lists.
On Mon, Jul 11, 2011 at 10:48 AM, Roelof Wobben
wrote: Hello,
I have made a exercise where I must split a even list. The answer is :
halve xs = (take n xs drop n xs) where n = length xs 'div' 2
Now I want to change it so i can split even and not even list,. I thought this can be the answer
halve xs = lenght xs 'mod' 2 = 0 : (take n xs drop n xs) otherwise : (take n+1 xs drop n+1 xs) where n = length xs 'div' 2
Can this be working ? I did not check this on GCHI because Im re - installing my OS.
Regards.
Roelof
_______________________________________________ Beginners mailing list Beginners@haskell.org http://www.haskell.org/mailman/listinfo/beginners
Beginners mailing list Beginners@haskell.org http://www.haskell.org/mailman/listinfo/beginners