我有一个putStrLn,它在下一行看到一个函数,因此没有正确编译.
if director == "" then
putStrLn "Please enter a directors name"
startFunctional 5 userName database --This line is seen as an argument for the putStrLn
else do
*etc*
Run Code Online (Sandbox Code Playgroud)
我试图使用括号来隔离字符串,但这会引发相同的错误.
错误信息:
The function `putStrLn' is applied to five arguments, but its type `String -> IO ()' has only one
Run Code Online (Sandbox Code Playgroud)
你有可能错过一个do
街区吗?
if director == ""
then do
putStrLn "Please enter a directors name"
startFunctional 5 userName database
else do
*etc*
Run Code Online (Sandbox Code Playgroud)
另外,尽量对准then
以及else
一个关键词的if
块.