[Top][All Lists]

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

Re: [PATCH] Fix (letrec ((ignore)))

From: Alan Mackenzie
Subject: Re: [PATCH] Fix (letrec ((ignore)))
Date: Mon, 14 Dec 2015 20:24:22 +0000
User-agent: Mutt/1.5.23 (2014-03-12)

Hello, John.

On Mon, Dec 14, 2015 at 10:23:38AM -0800, John Wiegley wrote:
> >>>>> Alan Mackenzie <address@hidden> writes:

> > Just as a matter of interest,
> >    (let ((foo) ... ) ...)
> > is accepted by the interpreter and byte compiler, binding foo to nil.

> In the spirit of our recent clarifications, I think it should also be made an
> error, rather than an implicit binding to nil.

I should have checked before writing my last contribution, but (let
((foo) ...) ...) is actually documented as permissible in the Elisp

That weakens considerably the case for making it invalid.

> I have a feeling there are still many more places where this behavior exists,
> and we are just beginning to scratch the surface.  For example:

>     (dolist ((i)) (message "Hello"))

> Is also accepted as a "do nothing" block, when it should give an error about a
> missing value.

Outch, that's confusing.

> -- 
> John Wiegley                  GPG fingerprint = 4710 CF98 AF9B 327B B80F
> http://newartisans.com                          60E1 46C4 BD1A 7AC1 4BA2

Alan Mackenzie (Nuremberg, Germany).

reply via email to

[Prev in Thread] Current Thread [Next in Thread]