syndicate-rkt/syndicate/support/counter.rkt

11 lines
198 B
Racket

#lang racket/base
(provide make-counter)
(define (make-counter [start-value 0])
(define next-value start-value)
(lambda ()
(let ((v next-value))
(set! next-value (+ v 1))
v)))