GNU bug report logs - #47862
26.3; (elisp) `Eval During Compile'

Previous Next

Package: emacs;

Reported by: Drew Adams <drew.adams <at> oracle.com>

Date: Sun, 18 Apr 2021 04:11:02 UTC

Severity: minor

Found in version 26.3

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

Full log


Message #17 received at 47862 <at> debbugs.gnu.org (full text, mbox):

From: Drew Adams <drew.adams <at> oracle.com>
To: Philipp Stephani <p.stephani2 <at> gmail.com>
Cc: "47862 <at> debbugs.gnu.org" <47862 <at> debbugs.gnu.org>
Subject: RE: [External] : Re: bug#47862: 26.3; (elisp) `Eval During Compile'
Date: Sun, 18 Apr 2021 15:20:07 +0000
> Could we instead redefine "special form" to mean "any form that
> doesn't evaluate its arguments like a function does, no matter whether
> it's implemented in C or as an ELisp macro"? It normally doesn't
> matter for users how such forms are implemented.

No, please don't.  Both macro and special form have
established meanings in Emacs.

And neither necessarily does not evaluate its args.
It's incorrect to give the impression that that's
the case.

What's the case is that neither necessarily evals
its args - any or all of its args, and if it does
evaluate any args it doesn't necessarily eval them
in any particular order.

A macro should be referred to in the doc as a macro.
A special form isn't implemented as a macro, and it
should be referred to in the doc as a special form.

Beyond that, we should not be calling `foo' a macro
in some help (e.g. doc string) and calling it a
special form in other help (e.g. Elisp manual).



This bug report was last modified 4 years and 16 days ago.

Previous Next


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