[Haskell-cafe] What's going on here?
michael rice
nowgate at yahoo.com
Sat Jan 16 22:02:59 EST 2010
I don't see anything wrong with this function, which just subtracts 1 from the first element of an Int list (if there is a first element).
Michael
My function:
dropFirst :: [Int] -> [Int]
dropFirst [] = []
dropFirst (x:xs) = (x-1) : xs
My output:
> :l dropfirst
[1 of 1] Compiling Main ( dropfirst.hs, interpreted )
Ok, modules loaded: Main.
*Main> dropFirst [3 4 5 6]
<interactive>:1:11:
No instance for (Num (t -> t1 -> t2 -> Int))
arising from the literal `3' at <interactive>:1:11-17
Possible fix:
add an instance declaration for (Num (t -> t1 -> t2 -> Int))
In the expression: 3 4 5 6
In the first argument of `dropFirst', namely `[3 4 5 6]'
In the expression: dropFirst [3 4 5 6]
*Main>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.haskell.org/pipermail/haskell-cafe/attachments/20100116/f08e78c7/attachment.html
More information about the Haskell-Cafe
mailing list