@@ -15,6 +15,7 @@ module Parse.Helpers
1515 where
1616
1717import Data.Char (isUpper)
18+import qualified Data.Set as Set
1819import Text.Parsec hiding (newline, space, spaces)
1920
2021import qualified AST.Expression.Source as Src
@@ -60,7 +61,7 @@ makeVar firstChar =
6061 choice
6162 [ do lookAhead (char '\'')
6263 failure (Syntax.prime variable)
63− , if variable `elem` reserveds then
64+ , if Set.member variable reserveds then
6465 failure (Syntax.keyword variable)
6566 else
6667 return variable
@@ -79,8 +80,9 @@ reserved word =
7980 ]
8081
8182
82−reserveds :: [String]
83+reserveds :: Set.Set String
8384reserveds =
85+ Set.fromList
8486 [ "if", "then", "else"
8587 , "case", "of"
8688 , "let", "in"