如何在函数式编程语言中增加变量?
例如,我想这样做:
main :: IO ()
main = do
let i = 0
i = i + 1
print i
Run Code Online (Sandbox Code Playgroud)
预期产量:1.
我想从列表中删除一个项目,但它又回来了。
main = do
let y = ["aa","bb","cc","dd","ee","ff"]
let n = length y
replicateM_ (n-1) (deleteWord y)
deleteWord y = do
putStrLn "Write a word: "
word <- getLine
let new_y = delete word y
print new_y
Run Code Online (Sandbox Code Playgroud)
输出:
*Main> main
Write a word:
aa
["bb","cc","dd","ee","ff"]
Write a word:
bb
["aa","cc","dd","ee","ff"]
Write a word:
cc
["aa","bb","dd","ee","ff"]
Run Code Online (Sandbox Code Playgroud)
我希望 和"aa"保持"bb"删除状态,并且不再回到列表中。