An Experiment - UUID v7 for TiddlyWiki

Yes, understood. But if you need a check-sum, it does not have to be a check-digit. ISBN uses a check-digit, and to achieve its base-11 (first prime after 10), they need only add the symbol X to their alphabet, and it will only appear in the last place.

Crockford does a similar thing, but because 37 is five more than his 32 “digits” (0 - 9, A - Z, less I, L, O, and U), he adds five new symbols to his alphabet, all five of which can only appear in the last position: *, ~, $, =, and U/u. That seems overkill. There are lots of alternatives if you don’t insist on a single digit. One possibility, use the U, which was excluded not because it was easily confused with a digit, as were I, L, and O, but mostly because he needed to remove one more, and I guess he was worried about people saying FU too often, which, because he adds it back, can still happen at the end of the word. Here’s one possibility, which uses a U in one of the last two places when you need a check-sum.

u-first u-second
UA - 0 AU - 19
UB - 1 BU - 20
UC - 2 CU - 21
UD - 3 DU - 22
UE - 4 EU - 23
UF - 5 FU - 24
UG - 6 GU - 25
UH - 7 HU - 26
UJ - 8 JU - 27
UK - 9 KU - 28
UM - 10 MU - 29
UN - 11 NU - 30
UP - 12 PU - 31
UQ - 13 QU - 32
UQ - 14 RU - 33
US - 15 SU - 34
UT - 16 TU - 35
UV - 17 VU - 36
UW - 18

I don’t know why he insisted on a check-digit.

I’m sure we could get them together. The last state of play was that Jeremy wanted to consider more general-purpose tools to carry information in the URL fragment. Mine would fit in fine, but wouldn’t be the whole story. This POC would certainly fit in as well. I didn’t have the skills at the time to make the necessary changes in the TW codebase, and it got dropped for 5.4. I think my skills have grown enough that I could reasonably consider this now. I’ll try to squeeze out some time.