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.

Skip-next

From Esolang
Jump to navigation Jump to search
This is still a work in progress. It may be changed in the future.

Skip-next is an esolang created by user:cleverxia which isn't a brainfuck derivative. (it's a CT derivative)

Program flow

it worrks on a queue. skip() pops and return queue head, while push(x) pushes x.

Commands

Caption text
command meanding
0 push(0)
1 push(1)
; skip()
^ {{{1}}}

where the program consists of functions, next() means "goto the next subprogram". the "^" instruction is also called the "skip-next" instruction. when the IP runs to any subprogram's end, program halts

Computational class

This section is still a work in progress. It may be changed in the future.

Interpreter

program=['1^','01^',';1;^','^0010;^']
queue=[]
push=x=>queue=[x].concat(queue)
skip=x=>queue.pop()||0
i=0;cs=[...program[0]];
while(cs.length){let w=cs.shift();switch(w){
case'1':push(1);break;case'0':push(0);break;case';':skip();break;
case'^':a=skip();if(a)cs=[...program[++i%program.length]];}}