В чем проблема?Что вызывает ошибку синтаксического анализа в этой программе?
module Main
where
import System.IO
main = do
hSetBuffering stdin LineBuffering
numbers <- ask -- parse error on input `numbers'
putStrLn "The sum of all numbers is:"
putStrLn $ sum numbers
putStrLn "The product of all numbers is:"
putStrLn $ product numbers
ask :: (Read a, Eq a, Num a) => IO [a]
ask = do
putStrLn "Enter a number to add it to the list. Enter zero to terminate the list."
input <- getLine
let n = read input
if n == 0
then return []
else do
rest <- ask
return (n : rest)
У вас есть символы TAB? – augustss
@augustss да я –
@ A.B. У вас есть смешения таблиц и пробелов? Это смутит/сломает ghc – jozefg