My personal opinion for hyphens is:
- Ambiguity: most can be cleared up with spaces, and for examples like 3-8 if it’s numbers we can tell it’s a range from context
- Ease of input: one character is a lot easier to decide between than 3 (or 4 if you include minus), and if there are rules for software to be able to input the correct character every time then the differences in characters become redundant
- Subjective aesthetics: I quite like the consistent compactness of the single hyphen
And for quotes:
- Ambiguity: They show when quotes start and end which is quite nice and we can have nested quotes. But these are things that are not critical to meaning and simply make it easier
- Ease of input: Usually automated but can absolutely tear through code if pasted in the wrong place. If we deem these smart quotes useful enough then they can coexist with typewriter quotes peacefully if we do not run the quote formatting on code blocks (which is where code should be anyway)
- Subjective aesthetics: I do like the look of smart quotes but would be willing to use straight quotes