;; I wanna write a function wich sets a specific variable with itself in a ;;function

;; e.g 
(defien a 4) ; a=> 4
(set! a (+ 4 a)) ;a=> 8
;;wanna function / macro
(set!-self a (+ 4 a)) => 8

;; My horrible attempts

(define-syntax set!-self
  (syntax-rules ()
    ((_ self f)
     (eval `f))))

(define (set-self self f)
  (eval `(set! self ,f)))