def VM(code):
    A = 0
    J = 0
    jv = 0
    loop = []
    dom = []
    tom = {}
    while A < len(code):
        if code[A] == "_":
            jv += 1
            J = (jv % 3)-1
        elif code[A] == "-":
            print(end=chr(dom[tom[code[A-1]]][1]))
        elif code[A] == "<":
            loop.append([A,1])
        elif code[A] == ">":
            if loop:
                A = loop[-1][0]
                if(loop[-1][1] == 0):
                    loop[-1][1] = 0
                else:
                    loop.pop()
        elif code[A] == " " or code[A] == "\n":
            print()
        else:
            k = 0
            for name in dom:
                if name[0] == code[A]:
                    dom[k][1]+=J
                    tom[code[A]]=k
                    break
                k+=1
            else:
                dom.append([code[A],0])
        A += 1
VM("""__a<<<<<<a>>>>>><<<a>>>__a-__<a>a-__<<<a>>>_a_<a->_aaa__a-_b<<<<<b>>>>>__b-_<<<a>>>__a-__<<<a>>>_a-_<a>a__a-_<<<<<b>>>>><<<b>>><<b>>__b-__<<<b>>>b__b-""")

Embed on website

To embed this project on your website, copy the following code and paste it into your website's HTML: