Code Review

Compare your solutions

    #| BEGIN (Write your solution here) |#
; My code
(define (=zero? num)
    (apply-generic 'zero? num)
)
(define (update-scheme-number-package)
    (put 'zero? '(scheme-number) (lambda (num) (= num 0)))
)
(define (update-rational-package)
    (define (numer x) (car x))
    (put 'zero? '(rational) (lambda (num) (= (numer num) 0)))
)
(define (update-complex-package)
    (put 'zero? '(complex) (lambda (num) (and (= (real-part num) 0) (= (imag-part num) 0))))
)
#| END |#