å 2010å 1æ 17æ æææ 11:02:59ïmichael rice åé:
> 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).
> 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]
Use dropFirst [3,4,5,6], I think.
> 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]
Haskell-Cafe mailing list[email protected]http://www.haskell.org/mailman/listinfo/haskell-cafe