emacs-devel
[Top][All Lists]
Advanced

[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
manual.

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]