You don't need lookahead to deal with lisp, you just need super fuckin lazy parsing.
So like, we don't deal with a number until we find a non-number character, then we execute both the number handling code and the non-number handling code.
This will break at places where you have like, numbers and symbols right next to each other but like... don't do that.
@efi to be fair idk why i added numbers because this is only going to support McCarthy's original lisp constructs which are like five different functions none of which deal with numbers
@efi but also yes a negative number will fuck up because we straight up do a shitty tiny hash on the input symbol, so it will start hashing the minus sign, and then multiply that by ten and add the number to it, because it would waste bytes checking the state beforehand
Chitter is a social network fostering a friendly, inclusive, and incredibly soft community.