Building a better Alphabet
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Anna 599734c17a Ignore the default binary go builds. 2 weeks ago
.gitignore Ignore the default binary go builds. 2 weeks ago
alphabetter.go Use canonical names for the letters, and fix comparisons where one letter's name is a strict initial substring of another. 2 weeks ago Fix license. 2 weeks ago Implement random starting alphabet. 2 weeks ago

Alphabetter - procedurally improving the alphabet

Inspired by @rfglenn's tweet about alphabetizing the alphabet, Alphabetter is a shitpost that "improves" the alphabet by sorting the letters lexicographically by their canonical (American English) spellings.

But it doesn't stop there. It then sorts the "new" alphabet by its own order, and then sorts THAT alphabet, iteratively, with the goal of finding a "steady state", that is, an alphabet that is already alphabetized. (according to its own order)

This happens after only 3 iterations, yielding the "better" alphabet:



If for some reason you want to run this code, just do

go build alphabetter.go

with nearly any version of golang installed. Then execute it with


To loop forever, run with --infinite. While in infinite mode, only the starting alphabet and final alphabet are printed.

To start with a random alphabet (on each iteration), run with --random.