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:ChuckEsoteric08/Collab

From Esolang
Jump to navigation Jump to search

Collab with User:yayimhere

Some sketch: Program consists of unsigned integers of arbitrary size:

_ - a NOP. addded this so its easier to understand the program
0 - input a list of integers and enqueue all of the integers to the current queue
1 - swap queues, and enqueues A to the queue that was swapped from
2 - if front is equal to the integer counter-clockwise of the current instruction it will turn clockwise, 
else move in the same direction. The integer pointed to will then be replaced with a 2, until it is read. the command returns to its original state(after the read is completed)
3 - move right
4 - move left
5 - move up
6 - move down
7 - dequeue and store value in cell to the right (relative to the current instruction, so clockwise)
8 or larger - enqueue that integer

Moving out of bounds wraps pointer to the opposite side

Actually I (ChuckEsoteric08) think NOP could be 0 and other integers are increased by 1, just as it was in my original version before I decieded to remove them when making Cyclic Tag


Grill Tag without halt implementation: (with 0 in data being 10 and 1 in data being 11, represented as A and B here)

Due to changes it is incorrect


First input data, then program

0 1 0 6 1 4 4 4
6 A 7 2 A 5 0 5
6 6 7 2 B 5 0 5
1 3 1 3 2 5 0 5
6 B 0 0 3 A B 5
3 2 7 3 3 3 3 5 
0 3 A 7 3 3 3 5

8x7, maximum program size is 10x10. any larger program is invalid. Was created for the first version changes:

  • Data always has a 0 appended to it.
  • Changed behaviour of the program boundary