(define-syntax inc! (syntax-rules () ((_ variable) (set! variable (+ variable 1))) ((_ variable value) (set! variable (+ variable value))))) (define-syntax dec! (syntax-rules () ((_ variable) (set! variable (- variable 1))) ((_ variable value) (set! variable (- variable value))))) (define-syntax while (syntax-rules () ((_ condition body) (letrec ((loop (lambda () (if condition (begin body (loop)))))) (loop))))) (define (append-to-list L element) (append L (list element))) (define-syntax append-to-list! (syntax-rules () ((_ list element) (set! list (append-to-list list element)))))