10 lines
187 B
Racket
10 lines
187 B
Racket
|
#lang racket/base
|
||
|
|
||
|
(provide object-id)
|
||
|
|
||
|
(define table (make-weak-hasheq))
|
||
|
(define next 0)
|
||
|
|
||
|
(define (object-id x)
|
||
|
(hash-ref! table x (lambda () (let ((v next)) (set! next (+ v 1)) v))))
|