rulesDef :: TokenParser st
rulesDef = makeTokenParser $ LanguageDef {
               commentStart = "{-",
               commentEnd = "-}",
               commentLine = "--",
               nestedComments = True,
               identStart = oneOf $ ['a' .. 'z'] <> ['A' .. 'Z'] <> ['0' .. '9'],
               identLetter = oneOf $ ['a' .. 'z'] <> ['A' .. 'Z'] <> ['0' .. '9'],
               opStart = oneOf "-,",
               opLetter = char '>',
               reservedNames = [],
               reservedOpNames = ["->", "<>"],
               caseSensitive = True
                 }
rulesDef :: TokenParser st
rulesDef = makeTokenParser $ LanguageDef {
               commentStart = "{-",
               commentEnd = "-}",
               commentLine = "--",
               nestedComments = True,
               identStart = oneOf $ ['a' .. 'z'] <> ['A' .. 'Z'] <> ['0' .. '9'],
               identLetter = oneOf $ ['a' .. 'z'] <> ['A' .. 'Z'] <> ['0' .. '9'],
               opStart = oneOf "-,",
               opLetter = char '>',
               reservedNames = [],
               reservedOpNames = ["->", "<>"],
               caseSensitive = True
                 }
rulesDef = makeTokenParser $ LanguageDef {
               commentStart = "{-",
               commentEnd = "-}",
               commentLine = "--",
               nestedComments = True,
               identStart = oneOf $ ['a' .. 'z'] <> ['A' .. 'Z'] <> ['0' .. '9'],
               identLetter = oneOf $ ['a' .. 'z'] <> ['A' .. 'Z'] <> ['0' .. '9'],
               opStart = oneOf "-,",
               opLetter = char '>',
               reservedNames = [],
               reservedOpNames = ["->", "<>"],
               caseSensitive = True
                 }