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.

User talk:David.werecat

From Esolang
Jump to navigation Jump to search

Mindfuck

« MindFuck - A language based on Brainfuck but the instruction codes change every instruction and data on the tape can suddenly become "missing" ». How about the following:

  • The commands +, -, >, <, ,, ., [ and ] are numbered 0, 1...7
  • Use lexicographical order on (value in the cell, number of the cell) to virtually reorder the eight cells ptr, (ptr+1)... (ptr+7)
  • Reassign the eight commands according to the new order

In case this is unclear, here is an example. Suppose the tape (starting from the cell under the pointer) is 60 22 73 26 20 43 19 22.... Then the new order is 19(6) 20(4) 22(1) 22(7) 26(3) 43(5) 60(0) 73(2) Therefore if the next command in the program is:

  • '+' (60, 0), interpret it as '[' (6) instead;
  • '-' (22, 1), interpret it as '>' (2) instead;
  • '>' (73, 2), interpret it as ']' (7) instead;
  • '<' (26, 3), interpret it as ',' (4) instead;
  • ',' (20, 4), interpret it as '-' (1) instead;
  • '.' (43, 5), interpret it as itself (5);
  • '[' (19, 6), interpret it as '+' (0) instead;
  • ']' (22, 7), interpret it as as '<' (3) instead.

That's a simple permutation, so it may not be as interesting as what you had in mind, but it does change the instruction codes (at almost every use of > or < and at most uses of + - ,). It can be made slightly more confusing by cumulating/composing the successive permutations, instead of always starting over from the initial order +-><,.[] Koen (talk) 20:48, 8 September 2012 (UTC)