((define (((execute 1) s d) (pgm) (x)) (calls ((run 2 2) s s d d) (pgm pgm) (x (lift ())))) (define (((run 2 2) s s d d) (pgm suf) (x y)) (ifs (ops null? suf) y (ifs (ops equal? (ops car suf) 'x:=x+1) (calld ((run 2 2) s s d d) (pgm (ops cdr suf)) ((opd cons (lift 1) x) y)) (ifs (ops equal? (ops car suf) 'y:=y+1) (calld ((run 2 2) s s d d) (pgm (ops cdr suf)) (x (opd cons (lift 1) y))) (ifs (ops equal? (ops car suf) 'x:=x-1) (calld ((run 2 2) s s d d) (pgm (ops cdr suf)) ((opd cdr x) y)) (ifs (ops equal? (ops car suf) 'y:=y-1) (calld ((run 2 2) s s d d) (pgm (ops cdr suf)) (x (opd cdr y))) (ifs (ops equal? (ops car (ops car suf)) 'goto) (calls ((run 2 2) s s d d) (pgm (calls ((hop) s s) (pgm (ops cdr (ops car suf))) ())) (x y)) (ifs (ops equal? (ops car (ops car suf)) 'ifx=0) (ifd (opd null? x) (calld ((run 2 2) s s d d) (pgm (calls ((hop) s s) (pgm (ops cdr (ops car suf))) ())) (x y)) (calld ((run 2 2) s s d d) (pgm (ops cdr suf)) (x y))) (ifs (ops equal? (ops car (ops car suf)) 'ify=0) (ifd (opd null? y) (calld ((run 2 2) s s d d) (pgm (calls ((hop) s s) (pgm (ops cdr (ops car suf))) ())) (x y)) (calld ((run 2 2) s s d d) (pgm (ops cdr suf)) (x y))) (calls ((run 2 2) s s d d) (pgm pgm) (y x))))))))))) (define (((hop) s s) (pgm dest) ()) (ifs (ops null? dest) pgm (calls ((hop) s s) ((ops cdr pgm) (ops cdr dest)) ()))))