(import (scheme base) (scheme write)) (define-syntax destructuring-bind (syntax-rules () ((_ (name1 names ...) var body1 bodys ...) (apply (lambda (name1 names ...) body1 bodys ...) var)))) (destructuring-bind (a b c) '(1 2 3) (display "a: ") (display a) (newline) (display "b: ") (display b) (newline) (display "c: ") (display c) (newline))