you could have a flag for the compiler-parser to keep whitespace and use that whitespace rather than auto-generated one if present.
If you keep the raw string for each token/literal, you can also fix the number thing that way if you want. But not having any string backups has a certain purity that might be your goal 😉
Merveilles is a community project aimed at the establishment of new ways of speaking, seeing and organizing information — A culture that seeks augmentation through the arts of engineering and design. A warm welcome to any like-minded people who feel these ideals resonate with them.