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:Biscat111/Sandbox

From Esolang
Jump to navigation Jump to search
code = input("code: ")
codelist = []
#gets code into 1 (one) string
while code != "":
    #print(code)
    codelist.append(code)
    code = input("code: ")     
code = ""
while codelist != []:
    x = codelist[0]
    code += x
    codelist.remove(x)
    
#by Biscat111
code += " "
queue = []
cursor = 0
while cursor < len(code):
   
    if code[cursor] == ".":
        queue.append(0)
   
    if code[cursor] == "+":
        queue[0] += 1
   
    if code[cursor] == "-":
        queue[0] -= 1
   
    if code[cursor] == "p":
        queue.pop(0)
   
    if code[cursor] == "r":
        front = queue.pop(0)
        queue.append(front)
   
    if code[cursor] == "i":
        if code[cursor+1] == "c":
            queue.append(ord(input("input character: ")))
        else:
            queue.append(int(input("input number: ")))

    if code[cursor] == "o":
        if code[cursor+1] == "c":
            print(chr(queue[0]), end="", flush=True)
        else:
            print()
            print(queue[0])
   
    if code[cursor] == "s":
        if queue[0] != 0:
            cursor += 1
            adress = 0
            #is the character between 0 and 9
            while 47 < ord(code[cursor]) < 58:
                digit = int(code[cursor])
                cursor += 1
                adress *= 10
                adress += digit
            cursor = adress-1
            #other debugging tool
            #print(code[(cursor+1):])
            #print("s")
   
    #debugging tools
    #print(code[cursor])
    #print(queue)
    #print(cursor)
    #if cursor > 100:
    #    pass #debugging
    cursor += 1