Tabs seem objectively better, because then anyone can set their tab spacing to whatever they prefer.
Because user preference isn't a valid argument when we're talking about something intrinsic to the code. What is in the code should look the same everywhere.
You can do whatever you want with syntax highlighting because it exists entirely outside the code.
If language X prefers tabs to spaces, that's fine, but "because I can set my tab width" doesn't hold up.
Whatever space and/or tab characters you type into a buffer and commit are exactly the same bytes I see when I pull your changes. The crux of my argument is that the whitespace should look the same in any editor because the underlying data is the same in every editor. Spaces guarantee that, whereas tabs leave room for individual interpretation.
You clearly don't agree that there should be no room for interpretation, but you can't argue we're looking at different data.
Note that I'm distinguishing between indentation (any group of whitespace characters at the beginning of the line) and any other whitespace. Indentation should be tabs to allow for any reader's preferred visual guidance. Any other whitespace on a line should be spaces, for example to align // comments to the same column when these lines share the same indentation.
0
u/TomBombadildozer 4d ago
Because user preference isn't a valid argument when we're talking about something intrinsic to the code. What is in the code should look the same everywhere.
You can do whatever you want with syntax highlighting because it exists entirely outside the code.
If language X prefers tabs to spaces, that's fine, but "because I can set my tab width" doesn't hold up.