Designed for flexibility.

Snarl uses a binary-based variable length encoding to represent characters, graphemes, or other elements of a message. In a standard English encoding table, the letters of the Latin alphabet are arranged in descending order of frequency in typical English text. Tables for other languages can be constructed with characters and frequency data from the language in question. As long as it's divisible into letter-like parts, any content can be encoded in this way — even pseudolanguages like IPA.

Once the characters have been sorted, each is assigned a binary code. These codes appear to be simple binary numbers, but with one major difference - leading zeroes are not implied. Thus, the codes 1, 01, and 001 are all different. This allows up to 30 characters to be represented by codes 1-4 bits in length. With codes up to 5 bits, the maximum rises to 62.

English Table
A00
B0101
C101
D011
E0
F0001
G0010
H001
I10
J1000
K0111
L100
M111
N11
O01
P0100
Q1010
R010
S000
T1
U110
V0110
W0000
X1001
Y0011
Z1011
German Table
A11
B0001
C101
D001
E0
F0011
G110
H010
I00
J1011
K0100
L100
M111
N1
O0000
P1000
Q1110
R10
S01
T000
U011
V0110
W0010
X1111
Y1101
Z0101
Ä1001
Ö1100
Ü0111
ß1010
ADVERTISEMENT
Continue to Process
Continue to Process