Code Review
Compare your solutions
#| BEGIN (Write your solution here) |#
(define (make-monitored f)
(let ((c 0))
(lambda (m)
(cond ((eq? m 'how-many-calls?) c)
((eq? m 'reset-count) (set! c 0))
(else (set! c (+ 1 c)) (f m))))))
#| END |#
#| BEGIN (Write your solution here) |#
(define (make-monitored f)
(let ((c 0))
(lambda (m)
(cond ((eq? m 'how-many-calls?) c)
((eq? m 'reset-count) (set! c 0) c)
(else (set! c (+ 1 c)) (f m))))))
#| END |#
#| BEGIN (Write your solution here) |#
(define (make-monitored f)
(let ((c 0))
(lambda (m)
(cond ((eq? m 'how-many-calls?) c)
((eq? m 'reset-count) (set! c 0) c)
(else (set! c (+ 1 c)) (f m))))))
#| END |#
#| BEGIN (Write your solution here) |#
(define (make-monitored f)
(let ((c 0))
(lambda (m)
(cond ((eq? m 'how-many-calls?) c)
((eq? m 'reset-count) (set! c 0))
(else (set! c (+ 1 c)) (f m))))))
#| END |#
#| BEGIN (Write your solution here) |#
(define (make-monitored f)
(let ((c 0))
(lambda (m)
(cond ((eq? m 'how-many-calls?) c)
((eq? m 'reset-count) (set! c 0) c)
(else (set! c (+ 1 c)) (f m))))))
#| END |#
#| BEGIN (Write your solution here) |#
(define (make-monitored f)
(let ((c 0))
(lambda (m)
(cond ((eq? m 'how-many-calls?) c)
((eq? m 'reset-count) (set! c 0) c)
(else (set! c (+ 1 c)) (f m))))))
#| END |#