from Data.Either import :: Either
-:: Token :== (Int, TokenValue)
+:: Token :== (Int, Int, TokenValue)
:: TokenValue
//Value tokens
- = IdentToken [Char] // Identifier
+ = IdentToken String // Identifier
| NumberToken Int // Integer
| CharToken Char // Character literal
//Keyword tokens
:: LexerOutput :== Either String [Token]
-(===) :: TokenValue Token -> Bool
-
lexer :: [Char] -> LexerOutput