all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* special forms
@ 2007-04-16 20:35 A Soare
  0 siblings, 0 replies; 5+ messages in thread
From: A Soare @ 2007-04-16 20:35 UTC (permalink / raw)
  To: Emacs   Help  [help-gnu-emacs]

I do not find in Feval where the `special forms' are treated. Can somebody help me please?

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

* Re: special forms
       [not found] <mailman.2150.1176756014.7795.help-gnu-emacs@gnu.org>
@ 2007-04-18  0:30 ` John Paul Wallington
  0 siblings, 0 replies; 5+ messages in thread
From: John Paul Wallington @ 2007-04-18  0:30 UTC (permalink / raw)
  To: help-gnu-emacs

A Soare <alinsoar@voila.fr> writes:

> I do not find in Feval where the `special forms' are treated. Can somebody help me please?

It looks like from line 2272 or so in the current sources of eval.c:

      if (XSUBR (fun)->max_args == UNEVALLED)
        {
          backtrace.evalargs = 0;
          val = (*XSUBR (fun)->function) (args_left);
          goto done;
        }

Does that help?

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

* Re: special forms
@ 2007-04-18 19:40 A Soare
  2007-04-18 20:06 ` Karl Hegbloom
  0 siblings, 1 reply; 5+ messages in thread
From: A Soare @ 2007-04-18 19:40 UTC (permalink / raw)
  To: Emacs   Help  [help-gnu-emacs]

I do not find in Feval where the `special forms' are treated. Can somebody help me please?

A Soare <alinsoar@...> writes:

> I do not find in Feval where the `special forms' are treated. Can somebody help me please?

It looks like from line 2272 or so in the current sources of eval.c:

      if (XSUBR (fun)->max_args == UNEVALLED)
        {
          backtrace.evalargs = 0;
          val = (*XSUBR (fun)->function) (args_left);
          goto done;
        }

>Does that help? 

Thanks. 

I do not knot yet... What is the difference between SUBRP and XSUBR ?

Alin Soare.

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

* Re: special forms
@ 2007-04-18 19:50 A Soare
  0 siblings, 0 replies; 5+ messages in thread
From: A Soare @ 2007-04-18 19:50 UTC (permalink / raw)
  To: Emacs   Help  [help-gnu-emacs]

I do not find in Feval where the `special forms' are treated. Can somebody help me please?

A Soare <alinsoar@...> writes:

> I do not find in Feval where the `special forms' are treated. Can somebody help me please?

It looks like from line 2272 or so in the current sources of eval.c:

      if (XSUBR (fun)->max_args == UNEVALLED)
        {
          backtrace.evalargs = 0;
          val = (*XSUBR (fun)->function) (args_left);
          goto done;
        }

>Does that help? 

I looked closely. We got it.


"UNEVALLED" indicate that the evaluation of a function must mut evaluate its arguments.

Thanks a lot.


Alin Soare.

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

* Re: special forms
  2007-04-18 19:40 A Soare
@ 2007-04-18 20:06 ` Karl Hegbloom
  0 siblings, 0 replies; 5+ messages in thread
From: Karl Hegbloom @ 2007-04-18 20:06 UTC (permalink / raw)
  To: alinsoar; +Cc: Emacs   Help  [help-gnu-emacs]

On Wed, 2007-04-18 at 21:40 +0200, A Soare wrote:
> I do not knot yet... What is the difference between SUBRP and XSUBR ?

The naming convention is that the macro or function ending in 'p' is a
predicate.  It's asking the yes or no question "is this lisp object a
'subr'?"  It looks in the Lisp object's type field, and checks to see if
it's type is 'subr'.  The macros that start with 'X' are accessors, the
mnemonic being that "X" sounds like "access".  It is accessing and
returning the location of the C routine that implements the Lisp subr.

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

end of thread, other threads:[~2007-04-18 20:06 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <mailman.2150.1176756014.7795.help-gnu-emacs@gnu.org>
2007-04-18  0:30 ` special forms John Paul Wallington
2007-04-18 19:50 A Soare
  -- strict thread matches above, loose matches on Subject: below --
2007-04-18 19:40 A Soare
2007-04-18 20:06 ` Karl Hegbloom
2007-04-16 20:35 A Soare

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.