我想知道为什么我得到这个错误,因为我没有使用任何模式.在我的情况下,我没有模式匹配filterM的lambda.
错误
Pattern syntax in expression context: x -> not (x `elem` [".", ".."])
|
20 | filterFiles =filterM (x->not (x `elem` [".",".."]))
| ^^^^^^^^^^^^^^^^^^^^^^^
Run Code Online (Sandbox Code Playgroud)
我只想过滤给定目录中的文件
码
module Fil where
import System.Directory
import Control.Monad(filterM)
getFiles::FilePath->IO [String]
getFiles = getDirectoryContents
filterFiles::[String]->IO [String]
filterFiles =filterM (x-> not ( x `elem` [".",".."]))
Run Code Online (Sandbox Code Playgroud)
你忘了包括lambda.
filterFiles =filterM (\x-> not ( x `elem` [".",".."]))
^ here
Run Code Online (Sandbox Code Playgroud)