enum {dummy0=0,plus=3, dummy1=5, dummy2=7, dummy3=10, dummy4=13}; void vm(long *ip, long *sp) { for (;;) { switch (*ip++) { case dummy0: /* + */ sp[0]--; break; case plus: /* + */ sp[1] += sp[0]; sp++; break; case dummy1: /* + */ sp[0] = 0; break; case dummy2: /* + */ sp++; break; case dummy3: /* + */ sp--; sp[0] = sp[1]; break; case dummy4: /* + */ sp[1] = 0; break; } } }