[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Scheme-reports] Formal Response #382: Allow "if" to accept arbitrarily many if-then pairs
Yesterday, John Cowan wrote:
> In standard Scheme there are no packages, so there is only one
> symbol named "if".
It's an identifier, not a symbol.
> However, you can rebind or redefine it as you will.
And that's exactly why it's not a symbol: "redefining" it means that
you're actually creating a new binding. (So strictly speaking there
is no *re*definition, it's a new one.)
Earlier today, John Cowan wrote:
> Aaron W. Hsu scripsit:
> > Notice that you only need the explicit FOR when you are dealing
> > with explicit phasing systems like Racket. On systems like Chez or
> > Vicare/Ikarus, you should be able to just specify the
> > (extended-if) library and have things work.
> A fine example of why R6RS-style explicit phasing (where you can
> specify what phases an identifier is defined at, but cannot define
> it differently at different phases) makes little sense, as distinct
> from Racket-style fully isolated phasing.
It was a compromise so obviously it got the worst of both worlds.
((lambda (x) (x x)) (lambda (x) (x x))) Eli Barzilay:
http://barzilay.org/ Maze is Life!
Scheme-reports mailing list