-- Baic I/O and Loop (50 Points)
evalpoly = do 	putStr "What is the degree of polynomial: "
		degree <- getLine
		coeffs <- (funcOfCoeff ((read degree::Int)+1) [])
		putStr "What value do you want to evaluate at: "
		value <- getLine	
		putStr "The value of the polynomial is: "
		putStr (show (polyEvaluate (coeffs) (read value :: Float) ))
		putStr "\n"
--function loop to get coefficient--
funcOfCoeff 0 coeffs = do 		--to check the degree of 0
			return coeffs	--return list of coefficient
funcOfCoeff degree coeffs = do 	
			putStr ("What is the x^" ++ show(degree-1))	
			putStr " coefficient: "
			coeff <- getLine
			loop <- funcOfCoeff (degree-1) ((read coeff :: Int) : coeffs)
			return loop
			
polyEvaluate (coeffs) x = do
			powers <- zip coeffs (iterate (+1) 0)
			result <- map (\(a,b)-> a+b) powers	—PROBLEM IS HERE!!!!
			return result
here is error message:
in very bottom function (polyEvaluate), why is not working “result <- map (\(a,b) -> a+b) powers” ???
in Prelude, it is working
Thanks!