diff --git a/ice-9/ChangeLog b/ice-9/ChangeLog index 49bf7a407..7fca486ba 100644 --- a/ice-9/ChangeLog +++ b/ice-9/ChangeLog @@ -1,3 +1,9 @@ +Tue Sep 2 00:26:42 1997 Mikael Djurfeldt + + * boot-9.scm (gensym): Removed (replaced by primitive). + (obarray-gensym): Rewritten to use `gensym'. + (gentemp): Rewritten to use `gensym'. + Mon Sep 1 20:08:32 1997 Mikael Djurfeldt * gtcl.scm (make-tcl-binder): Rewritten to choose bindings diff --git a/ice-9/boot-9.scm b/ice-9/boot-9.scm index 85f406f53..42d645b71 100644 --- a/ice-9/boot-9.scm +++ b/ice-9/boot-9.scm @@ -483,17 +483,10 @@ (define (obarray-symbol-append ob . args) (string->obarray-symbol (apply string-append ob args))) -(define obarray-gensym - (let ((n -1)) - (lambda (obarray . opt) - (if (null? opt) - (set! opt '(%%gensym))) - (let loop ((proposed-name (apply string-append opt))) - (if (string->obarray-symbol obarray proposed-name #t) - (loop (apply string-append (append opt (begin (set! n (1+ n)) (list (number->string n)))))) - (string->obarray-symbol obarray proposed-name)))))) - -(define (gensym . args) (apply obarray-gensym #f args)) +(define (obarray-gensym obarray . opt) + (if (null? opt) + (gensym "%%gensym" obarray) + (gensym (car opt) obarray))) ;;; {Lists} @@ -2176,12 +2169,8 @@ e))) (#t e))) -(define gentemp - (let ((*gensym-counter* -1)) - (lambda () - (set! *gensym-counter* (+ *gensym-counter* 1)) - (string->symbol - (string-append "scm:G" (number->string *gensym-counter*)))))) +(define (gentemp) + (gensym "scm:G"))