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.

Talk:Эзотерикалық мысық

From Esolang
Jump to navigation Jump to search

Translation to Conditional brainfuck with 1-bit cells:

  • First line is always 0010. This represents a zero on the Conditional brainfuck tape. A one is represented with a 0100 instead.
  • +/- - >/<
  • > - >>>>
  • < - <<<<
  • {...} - \...>>\>>\<<

Technically, this implements something even stronger, an if/else construct, not just if:

  • {...if...|...else...} - \...if...>>\...else...>>\<<

The conditional brainfuck instruction is just the special case where the else clause is empty. (I would use Sloopy here, but if you read carefully the page actually mandates that the cell the pointer starts on is a 1 instead of a 0...) –PkmnQ (talk) 17:12, 18 October 2026 (UTC)

It would be interesting to see if it's still Turing-complete if you combine /\ into one instruction. To me it doesn't look like there's anything stopping it from being Turing-complete, but it becomes a lot more annoying to prove. –PkmnQ (talk) 17:15, 18 October 2026 (UTC)
I think this subset would definetly be Turing-complete, though I haven't tried to prove it. --ChuckEsoteric08 (talk) 17:45, 18 October 2026 (UTC)
It seems like it doesn't have nested statements, so it isn't really an implementation of Conditional Brainfuck,so other target should be used. --ChuckEsoteric08 (talk) 19:56, 18 October 2026 (UTC)
A normal if would be \...>>\<< i think Assembly (my userpage/send a message!) 20:18, 18 October 2026 (UTC)
I'd rather just prove Conditional brainfuck TC without using nested statements. –PkmnQ (talk) 01:12, 19 October 2026 (UTC)
its trivially tc thx to Alternating Exasperation Machine --dragoneater67 [talk|contribs] 04:28, 19 October 2026 (UTC)
I haven't kept up to date with the Exasperation machine side of things, I probably should, they seem like good tools to prove increasingly weirder tape-based languages Turing-complete. –PkmnQ (talk) 04:34, 19 October 2026 (UTC)
It can simulate TEM directly, I edited your translation. --ChuckEsoteric08 (talk) 05:21, 19 October 2026 (UTC)
Note: It was brought to my attention elsewhere that this compilation was inaccurate, as it couldn't translate stuff like {>} and {+}, i.e. it only works if you start and end on the same cell, and you don't flip the cell that you're on. Since the subset of Conditional brainfuck where conditionals are only of the aforementioned form is Turing-incomplete, I'll have to come up with a new proof. –PkmnQ (talk) 08:31, 20 October 2026 (UTC)

Reversibility

We can see it is fully reversible by formulating it as having boolean skip, initially false:

> - move right if skip is false
< - move left if skip is false
/ - swap if skip is false
\ - toggle skip if cell is equal to next

By assuming first line to be 001 we can simulate a simple reversible language which we can call ToggleSkip:

* - flip - >/<
> - right - >>>
< - left - <<<
| - toggle if 0 - \

--ChuckEsoteric08 (talk) 18:05, 24 October 2026 (UTC)

There's an exception for when the program loops, since \ wraps to start instead of after the first \, so when the end of the program is reached, skip is set to false, which seemingly breaks reversibility. I don't know how this affects things, though. –PkmnQ (talk) 03:00, 25 October 2026 (UTC)
Does it? From what it seems from original description when it reaches the end of a program while searching, it wraps to the start but it does not stop searching for \, thus jumping after the first \. --ChuckEsoteric08 (talk) 05:34, 25 October 2026 (UTC)