We are currently working on new rules for what content should and shouldn't be allowed on this website, and are looking for feedback! See Esolang:2026 topicality proposal to view and give feedback on the current draft.

TheEnd

From Esolang
Jump to navigation Jump to search

TheEnd is an esoteric programming language inspired by Malbolge. It's intention is to be very, very, close to unusable, without actually being there.

Specification

Number Format

TheEnd runs on a VM based on base-11. A word has 14 base-11 digits. There are no negative numbers

Registers

There are four registers, the accumulator, the code pointer, the data register, and the index register. All of them are one word wide. There are 500 words of memory.

Instructions

Each cycle, the location code pointer is pointing at is added to the data register, the code pointer is incremented, and a instruction is executed based on data mod 121.

TheEnd instructions
Instruction Action
22 swap(Acc, data);
23 Acc += Mem[index];
39 codeptr = Acc if Acc == data; data -= Mem[index];
71 swap(index, Acc);
93 data = 11;

Formatting

A program file consists of a list of initial memory values and addresses, both in base-11 format, one per line. It should give them in this manner.

 Address:Value

It should also give initial register values in the format.

 Name(one of A, the accumulator, D, the data, I, the index, P, the code pointer):Value