Hacker News new | ask | show | jobs
by lifthrasiir 1825 days ago
The GP is saying that the equal efficiency is possible with using only 41 out of 45 characters, so reducing the symbol set would make base45 (now base41) more useful as a general encoding, not just an encoding for QR codes.
1 comments

That's a fair point that wasn't made clearly enough. I have two questions though:

1) Is it worth no longer sharing the same lookup table? My supposition is that this wouldn't practically matter in the modern bloated environment anyway, but it's still annoying and might be a source of additional bugs.

2) Which 4 characters would be skipped for what reason?

I'd initially propose not including: non-printing character space (b45[36]), possible variable wildcard dollar-sign (also a currency symbol that might get translated) (b45[37]), html escape and database wildcard percent (b45[38]), then typical wildcard asterisk (star) (b45[39]). Thus the sequence string would be.

b41 = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ+-./:";