isValidIdentifier :: String -> Bool
isValidIdentifier s@(x:xs) = (isAlpha x || x == '_') && (all (\c -> isAlphaNum c || c == '_') xs)
isValidIdentifier :: String -> Bool
isValidIdentifier s@(x:xs) = (isAlpha x || x == '_') && (all (\c -> isAlphaNum c || c == '_') xs)
isValidIdentifier s@(x:xs) = (isAlpha x || x == '_') && (all (\c -> isAlphaNum c || c == '_') xs)