no title added by buhman on Mon Dec 3 09:31:44 2018

(define-record-type foo
  (make-foo x y)
  foo?
  (x foo-x)
  (y foo-y))

(define-syntax test
  (ir-macro-transformer
   (lambda (exp inject compare)
     (let ((get-x (inject (symbol-append (strip-syntax 'foo) '- (strip-syntax 'x))))
           (get-y (inject (symbol-append (strip-syntax 'foo) '- (strip-syntax 'y))))
           (body (cdr exp)))
       `(lambda () ,@body)))))
       ;;`(list ,(get-x body) ,(get-y body))))))