Friday, February 02, 2018

[dtethwpm] Unicode hexadecimal

Create a block of Unicode characters denoting hexadecimal digits. This would be helpful in marking a string intended to be hexadecimal data which happens not to have any digits 0-9, avoiding it from being interpreted as a regular word: DEAD BEEF, etc. It would also be helpful in avoiding a hexadecimal string which happens not to have any digits A-F from being interpreted as a decimal number. Previously.

Of course, with some programs using these characters but some not, it will be a mess, kind of reminiscent of curly quotes versus 7-bit clean quotes.

We could similarly have a block of 256 Unicode characters representing bytes. The visual appearance of a byte character could be its value in hexadecimal, similar to placeholder characters seen when a font does not have a character. The ability to encode binary data inline with text seems intriguingly potentially useful, though I'm exactly sure for what. It accomplishes a similar purpose as MIME and base64.

Octal.

There are clock characters for representing base 12 starting around U+1F550, and even sort of base 24 using the half-hour clocks. Base 6 has dice at U+2680. I Ching symbols: U+2630 (base 8), U+268a (base 2 and base 4), U+4DC0 (base 64), U+1D300 (bases 3, 9, 16, and 81, but not 27). 6-dot Braille U+2800 (base 64), 8-dot Braille U+2840 (base 256). There are exactly 100 characters in the domino tiles block U+1F030. Fractions around U+2150 and elsewhere, intriguingly including 0/3. Playing cards with 14(!) cards per suit at U+1F0A0.

There are a great many pairs of characters that could encode binary, e.g., ASCII ACK and NAK.

Are there any other bases commonly in use? Base 60 in time and angles. Base 20 seems likely.