<b>(a)</b> (define-syntax rotate (syntax-rules () ((rotate a) (void)) ; i.e., do nothing ((rotate a b c ...) (begin (swap a b) (rotate b c ...))))) <b>(b)</b> (begin (swap n e) (rotate e s w)) <b>(c) </b> (begin (swap n e) (begin (swap e s) (rotate s w))) <b>(d)</b> (begin (swap n e) (begin (swap e s) (begin (swap s w) (void))))
Example 4: rotate macro.