@@ -28,6 +28,7 @@ import PureScript.Names
29reservedNames :: [String]
29reservedNames :: [String]
30reservedNames = [ "case"
30reservedNames = [ "case"
@@ -69,7 +70,7 @@ reservedNames = [ "case"
70reservedOpNames :: [String]
71reservedOpNames :: [String]
71reservedOpNames = [ "!", "~", "-", "<=", ">=", "<", ">", "*", "/", "%", "++", "+", "<<", ">>>", ">>"
72reservedOpNames = [ "!", "~", "-", "<=", ">=", "<", ">", "*", "/", "%", "++", "+", "<<", ">>>", ">>"
72− , "==", "!=", "&", "^", "|", "&&", "||" ]
73+ , "==", "!=", "&", "^", "|", "&&", "||", "->" ]
74identStart :: P.Parsec String u Char
75identStart :: P.Parsec String u Char
75identStart = P.lower <|> P.oneOf "_$"
76identStart = P.lower <|> P.oneOf "_$"
@@ -129,7 +130,7 @@ properName :: P.Parsec String u String
129properName = lexeme $ P.try ((:) <$> P.upper <*> many (PT.identLetter langDef) P.<?> "name")
130properName = lexeme $ P.try ((:) <$> P.upper <*> many (PT.identLetter langDef) P.<?> "name")
131integerOrFloat :: P.Parsec String u (Either Integer Double)
132integerOrFloat :: P.Parsec String u (Either Integer Double)
132−integerOrFloat = Left <$> P.try (PT.integer tokenParser) <|>
133+integerOrFloat = Left <$> P.try (PT.natural tokenParser) <|>
133 Right <$> P.try (PT.float tokenParser)
134 Right <$> P.try (PT.float tokenParser)
135augment :: P.Stream s m t => P.ParsecT s u m a -> P.ParsecT s u m b -> (a -> b -> a) -> P.ParsecT s u m a
136augment :: P.Stream s m t => P.ParsecT s u m a -> P.ParsecT s u m b -> (a -> b -> a) -> P.ParsecT s u m a