lexProgram = catMaybes <$> some lexToken <* eof
>>= \ts->pure $ (map (\t->(0, 0, t)) ts)
+//Of hier een record van maken
+//lexToken :: Parser Char (Maybe (Int, Int, Int, TokenValue))
lexToken :: Parser Char (Maybe TokenValue)
lexToken =
//Comments
lexEscape = fromJust <$> ((
lexOp "a" (toChar 7) <|> lexOp "b" '\b' <|> lexOp "f" '\f' <|>
lexOp "n" '\n' <|> lexOp "r" '\t' <|> lexOp "v" '\v' <|>
- lexOp "'" '\'') <?> ("Unknown escape", 0))
+ lexOp "'" '\'') <?> LexError "Unknown escape")