Chinese

From Esolang
Jump to: navigation, search

Chinese is a compression scheme for brainfuck.

Brainfuck command Number equivalent
+ 1
- 2
> 3
< 4
[ 5
] 6
. 7
, 8

Take a brainfuck program, then for every 4 characters, get the number equivalent. For example, ,[.,] would be 8578 1

Once you have the number equivalents for every 4 characters, use each group as the serial number in the Modern Chinese Character Frequency List. For example, 8578 1 would become 鏢的 (8,578th and 1st characters in the list).

Additionally, in the case that it would be more efficient to condense multiple instances of the same character, you can use 9, the number equivalent, and the times you want it repeated. For example, instead of representing ++++++++++++++ as 缓缓缓这 (1111 1111 1111 11), you could make it 艼 (9114). This goes up to 109, for example character 913 is +++ while 9103 is 103 of +

ASCII only

Combine groups of 2. Subtract 11 from each group. This gives you a base 8 number. Convert to decimal, and 0-25 = a-z, 26-51 = A-Z, 52-61 = 1-9, 62 = :, 63 = ;

This encoding is otherwise known as "yet another variant of base64".