blob: 16f4a41375df488c5ae12a35dd8de777ab8c5444 (
plain) (
tree)
|
|
(define make-count
(let ((glob 0))
(lambda ()
(let ((loc 0))
(lambda (msg)
(cond ((eq? msg 'local)
(lambda ()
(set! loc (+ loc 1))
loc))
((eq? msg 'global)
(lambda ()
(set! glob (+ glob 1))
glob))
(else (error "No such method" msg)) ))))))
|