以下のリストをコンパイルしようとすると
import System.Environment(getArgs)
import System.Exit
import Control.Monad(when)
main = do
args <- getArgs
when (length args /= 2) $ do
putStrLn "Syntax: passwd-al filename uid"
existFailure
コンパイラの苦情: 関数 'putStrLn' が 2 つの引数に適用されます。しかし、明らかにそれは 1 つの文字列しか必要とせず、existFailure は System.Exit からの別の IO アクションです。
これを修正するには?