t x =
    let (number, rest) = span isDigit xs
    in NumberConst (read number) : lexer rest
lexer xs@(x:_) | isOpS
lexer xs@(x:_) | isDigit x =
    let (number, rest) = span isDigit xs
    in NumberConst (read number) : lexer rest
lexer xs@(x:_) | isDigit x =
    let (number, rest) = span isDigit xs
    in NumberConst (read number) : lexer rest