[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Dump labels in favor of static-locales.

I would like to suggest that labels be deleted from T in favor
of the idea of a static-locale. The static-locale would be
exactly the same as an ordinary local except that once defined,
it could never be modified as is so in an environment created
by the labels statement. The syntax of the static-locale would
be the same as locales so that there would be one way of defining
procedures. The intent of labels and locale environments is not
as different as their syntax implies. These expression are nearly
the same:

(locale ()
  (define (ex-aux x c) ..... )
  (lambda (a) (ex-aux a 0)))

(labels (
  ((ex-aux x c) ..... )
  (lambda (x) (ex-aux a 0)))

but what a difference in syntax!