GNU bug report logs - #60895
Make lambda warning easier to understand

Previous Next

Package: emacs;

Reported by: Dan Jacobson <jidanni <at> jidanni.org>

Date: Tue, 17 Jan 2023 22:51:02 UTC

Severity: wishlist

Full log


View this message in rfc822 format

From: Drew Adams <drew.adams <at> oracle.com>
To: Dan Jacobson <jidanni <at> jidanni.org>, "60895 <at> debbugs.gnu.org" <60895 <at> debbugs.gnu.org>
Subject: bug#60895: Make lambda warning easier to understand
Date: Tue, 17 Jan 2023 23:25:29 +0000
> After saying
>    Warning: (lambda nil \.\.\.) quoted with ' rather than with #'
> 
> please also say
>    Just change '(lambda into #'(lambda
> 
> That way people will understand it.
> https://urldefense.com/v3/__https://emacs.stackexchange.com/questions/743
> 18/warning-quoted-with-rather-than-
> with__;!!ACWV5N9M2RV99hQ!IsLX9TB5zcLT0PwRzmL0cCiiGzx62LVQbGMPk3EiStP6kJvG
> Um6D1reVbucpBxlw8r6g-KjbeT19F7SFjA$

Users should be told, so they understand:

1. Not to quote lambdas.  Tell them that the result
   is a _list_, which only in some cases will be
   interpreted as a function.  (And mention that the
   byte compiler often can't know the intended use
   is as a function, if it's quoted.)

2. lambdas don't need to be quoted - they're
   self-evaluating in Elisp - like t and nil.

3. Using #' makes the intention/use clear for all,
   including the byte-compiler.

A byte-compiler warning is appropriate.  Preferably
it would also point you to doc explaining this in
more detail in the Elisp manual.





This bug report was last modified 1 year and 286 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.