Subject: bug#30241: closed (Re: bug#30241: (Emacs 26.0.91: "Generalized variables" are not defined.))

From: [email-masked] (GNU bug Tracking System)
Date: Wed, 21 Mar 2018 18:06:02 +0000

Your bug report

#30241: Emacs 26.0.91: "Generalized variables" are not defined.

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
30241: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=30241
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#30241: (Emacs 26.0.91: "Generalized variables" are not defined.)
From: Alan Mackenzie <[email-masked]>
To: [email-masked]
Date: Wed, 21 Mar 2018 17:46:58 +0000
List-Id: <debbugs-submit.debbugs.gnu.org>

On Wed, Jan 24, 2018 at 20:15:02 +0000, GNU bug Tracking System wrote:

[ .... ]

Bug fixed, by enhancing the documentation, in commit
4ab455147069d4b7247ba3aff0da3dba3a671df6.

-- 
Alan Mackenzie (Nuremberg, Germany).

Subject: Emacs 26.0.91: "Generalized variables" are not defined.
From: Alan Mackenzie <[email-masked]>
To: [email-masked]
Date: Wed, 24 Jan 2018 20:06:52 +0000
List-Id: <debbugs-submit.debbugs.gnu.org>

Hello, Emacs.

Emacs 25.3, Emacs 26.0.91 elisp manual.

In enough places in emacs, we find terms like "generalized variable"
"place form", and "place" being used.  These terms are not defined in
the Elisp manual, or any place where they are used.  This is a bug.

There is a page in elisp which purports to define "generalized
variable", but rather than defining the term, it talks vaguely around
it, saying it is "one of the many places in Lisp memory where values can
be stored".  Does this mean it is different from the other such places?
If so, how does it differ.  WHAT IS IT????

The elisp page then goes on to give examples of "generalized variables",
never defining the term.  It gives no criterion by which the reader can
determine whether some random object is a generalized variable or not.

I want to know whether a function is a "generalized variable".  After a
long time trying to find out, I still don't know.  I've been trying for
over an hour to use add-function, with forms like

    (add-function :before sit-for (lambda () (acm-backtrace 5)))
    (add-function :before 'sit-for (....))
    (add-function :before #'sit-for (.....))
    (add-function :before (symbol-function 'sit-for) (....))

, and got nothing but unhelpful error messages back, such as 

    Symbol's value as variable is void: sit-for

.  The documentation of add-function is likewise vague and unhelpful.
The various inflections of "sit-for" above are at a place in the
add-function form where a "generalized variable" is needed.  Is a
function a generalized variable or not?

-- 
Alan Mackenzie (Nuremberg, Germany).