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.
.chat
.chat pronounced dot chat is a esolang created by User:Yayimhere combining the concepts of the node alphabet, Tag systems, and Number Seventy-Four
memory
memory is a datastring that can hold this circular alphabet(order is preserved): {A, a, B, b, H, h, 1, 0}. if the rightmost char of the datastring is 0, the program will halt. the datastring start as just 1
Commands
Each character is one command. Characters not listed here are undefined behaviour.
| command | description |
|---|---|
0 |
if the first char of the datastring is 1 or the datastring is empty then a 0 will be appended to the datastring
|
[n |
if the length of the datastring is divisible by n divide it into chunks of length n and delete the first one, then put them back together (n must be only one digit long)
|
1 |
0 but is appends 1
|
> |
set current symbol to the symbol after it in the alphabet |
< |
move the end of the datastring to the start |
Computational class
We can translate any Cyclic tag system into .chat. We need to use similar method of translating every Cyclic tag system into one with initial data string of 1 to do so:
- Program starts with data enqueued, with
0being001and 1 being011except for the data bit in the front, for which initial0is removed. - Production starts with
[1and then just as when data was initialzied0becomes001and 1 becomes011. Production ends with[1[1(we use this to avoid error if length of the data is not divisible by 2). - We can also implement halting symbol of a tag system directly using the halt condition of .chat.
As such, .chat is Turing-complete with only three symbols: 01[.