all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / 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

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.