unofficial mirror of help-gnu-emacs@gnu.org
 help / color / mirror / Atom feed
* About `autoload-do-load'
@ 2013-01-01 12:13 Xue Fuqiao
  0 siblings, 0 replies; 5+ messages in thread
From: Xue Fuqiao @ 2013-01-01 12:13 UTC (permalink / raw)
  To: help-gnu-emacs

The docstring of the built-in function `autoload-do-load' says:

If non-nil, FUNNAME should be the symbol whose function value is FUNDEF, in which case the function returns the new autoloaded function value.

What does `function value' mean?  Does it mean `function cell'?  If not, what does it mean?
-- 
Best regards, Xue Fuqiao.
http://www.emacswiki.org/emacs/XueFuqiao



^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: About `autoload-do-load'
       [not found] <mailman.16473.1357042454.855.help-gnu-emacs@gnu.org>
@ 2013-01-01 12:51 ` Barry Margolin
  2013-01-08 15:46   ` Stefan Monnier
       [not found]   ` <mailman.16933.1357660011.855.help-gnu-emacs@gnu.org>
  0 siblings, 2 replies; 5+ messages in thread
From: Barry Margolin @ 2013-01-01 12:51 UTC (permalink / raw)
  To: help-gnu-emacs

In article <mailman.16473.1357042454.855.help-gnu-emacs@gnu.org>,
 Xue Fuqiao <xfq.free@gmail.com> wrote:

> The docstring of the built-in function `autoload-do-load' says:
> 
> If non-nil, FUNNAME should be the symbol whose function value is FUNDEF, in 
> which case the function returns the new autoloaded function value.
> 
> What does `function value' mean?  Does it mean `function cell'?  If not, what 
> does it mean?

Yes, function value and function cell are equivalent in this context.

-- 
Barry Margolin, barmar@alum.mit.edu
Arlington, MA
*** PLEASE post questions in newsgroups, not directly to me ***


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: About `autoload-do-load'
  2013-01-01 12:51 ` About `autoload-do-load' Barry Margolin
@ 2013-01-08 15:46   ` Stefan Monnier
       [not found]   ` <mailman.16933.1357660011.855.help-gnu-emacs@gnu.org>
  1 sibling, 0 replies; 5+ messages in thread
From: Stefan Monnier @ 2013-01-08 15:46 UTC (permalink / raw)
  To: help-gnu-emacs

> Yes, function value and function cell are equivalent in this context.

Not quite: a "cell" is a place somewhere in memory that can contain
a value.  So the "function cell" of a symbol *holds* (as opposed to
"is") a "function value".


        Stefan




^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: About `autoload-do-load'
       [not found]   ` <mailman.16933.1357660011.855.help-gnu-emacs@gnu.org>
@ 2013-01-08 17:28     ` Barry Margolin
  2013-01-08 17:50       ` Drew Adams
  0 siblings, 1 reply; 5+ messages in thread
From: Barry Margolin @ 2013-01-08 17:28 UTC (permalink / raw)
  To: help-gnu-emacs

In article <mailman.16933.1357660011.855.help-gnu-emacs@gnu.org>,
 Stefan Monnier <monnier@iro.umontreal.ca> wrote:

> > Yes, function value and function cell are equivalent in this context.
> 
> Not quite: a "cell" is a place somewhere in memory that can contain
> a value.  So the "function cell" of a symbol *holds* (as opposed to
> "is") a "function value".

But the way the phrase was being used in the documentation in question 
doesn't distinguish these two concepts.

-- 
Barry Margolin, barmar@alum.mit.edu
Arlington, MA
*** PLEASE post questions in newsgroups, not directly to me ***


^ permalink raw reply	[flat|nested] 5+ messages in thread

* RE: About `autoload-do-load'
  2013-01-08 17:28     ` Barry Margolin
@ 2013-01-08 17:50       ` Drew Adams
  0 siblings, 0 replies; 5+ messages in thread
From: Drew Adams @ 2013-01-08 17:50 UTC (permalink / raw)
  To: 'Barry Margolin', help-gnu-emacs

> > > Yes, function value and function cell are equivalent in 
> > > this context.
> > 
> > Not quite: a "cell" is a place somewhere in memory that can contain
> > a value.  So the "function cell" of a symbol *holds* (as opposed to
> > "is") a "function value".
> 
> But the way the phrase was being used in the documentation in 
> question doesn't distinguish these two concepts.

Not too surprising.

Stefan is of course right that the location and its contents are not the same
thing.

But consider "variable".  A variable is a named location as well.  And a
variable is not the same thing as its value.  But we sometimes write "variable
`foo'" when we really mean "the value of variable `foo'".  Hopefully we do so
only in contexts where the meaning of that shorthand is clear.

It's good to point out the difference.  It's also good for the doc to be clear
about which is meant, in any context where there could be confusion and where
the confusion would matter.

If you find a doc passage that is unclear in this regard, please submit a bug
report.

The term "function value" has its own problems, specific to the fact that a
function application returns a value.  Someone might think that that is what is
meant by the term.  It is probably better to speak specifically of the "value of
the function cell", rather than to use the term "function value".

But typically, the context where we might talk about "function value" would
leave no doubt about whether what is meant has anything to do with the value of
a function application.

And on the other hand, "function value" speaks to the fact that in Lisp a
function is itself a value, i.e., more or less a first-class object.  In this
sense the value of the function cell is a stand-in for the denoted functional
value.




^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2013-01-08 17:50 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <mailman.16473.1357042454.855.help-gnu-emacs@gnu.org>
2013-01-01 12:51 ` About `autoload-do-load' Barry Margolin
2013-01-08 15:46   ` Stefan Monnier
     [not found]   ` <mailman.16933.1357660011.855.help-gnu-emacs@gnu.org>
2013-01-08 17:28     ` Barry Margolin
2013-01-08 17:50       ` Drew Adams
2013-01-01 12:13 Xue Fuqiao

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).