all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: David Kastrup <dak@gnu.org>
To: Eli Zaretskii <eliz@gnu.org>
Cc: xfq.free@gmail.com, Stromeko@nexgo.de, emacs-devel@gnu.org
Subject: Re: [PATCH] Add prettify symbols to python-mode
Date: Wed, 23 Sep 2015 21:39:45 +0200	[thread overview]
Message-ID: <87fv249b7i.fsf@fencepost.gnu.org> (raw)
In-Reply-To: <83io71j5wt.fsf@gnu.org> (Eli Zaretskii's message of "Wed, 23 Sep 2015 22:24:02 +0300")

Eli Zaretskii <eliz@gnu.org> writes:

>> From: David Kastrup <dak@gnu.org>
>> Cc: xfq.free@gmail.com,  Stromeko@nexgo.de,  emacs-devel@gnu.org
>> Date: Wed, 23 Sep 2015 19:58:18 +0200
>> 
>> Eli Zaretskii <eliz@gnu.org> writes:
>> 
>> >> From: David Kastrup <dak@gnu.org>
>> >> Date: Wed, 23 Sep 2015 18:52:16 +0200
>> >> Cc: Xue Fuqiao <xfq.free@gmail.com>, Stromeko@nexgo.de, emacs-devel@gnu.org
>> >> 
>> >> C may not be a complicated language but it offers no significant
>> >> in-language features for integrating data structures and their
>> >> manipulators.  As a consequence, working with Elisp data in C does not
>> >> resemble either working with C or with Lisp.
>> >
>> > We have a small set of macros that make this a non-issue.
>> 
>> Lisp_Object x[2];
>> x[0] = a;
>> x[1] = b;
>> return Fplus (2, x);
>> 
>> does not resemble either a+b or (+ a b).  A non-issue is something else.
>
> Where's "Elisp data" in this example?
>
> I thought by "working with Elisp data in C" you meant using Lisp data
> structures passed to C functions, in which case the following is what
> I had in mind (where 'value' is some Lisp data type):
>
>   if (EQ (value, Qunspecified) || (EQ (value, QCignore_defface)))
>     return Qt;
>   else if (EQ (attribute, QCheight))
>     return INTEGERP (value) ? Qnil : Qt;
>   else if (CONSP (value) && EQ (XCAR (value), QCwhatever))
>     return XCDR (value);
>   else
>     return Qnil;

Which is supposed to resemble perfectly ordinary C code or perfectly
ordinary Lisp code?

You can call it a "non-issue" all you like, but it is limiting the
number of people comfortable working with the Emacs C core.  As long as
Emacs is expressive enough outside of the core, that's not really
limiting its usefulness all that much, but for things like new window
systems, one clearly cannot get around investing into C.

-- 
David Kastrup



  reply	other threads:[~2015-09-23 19:39 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-09-20 19:28 [PATCH] Add prettify symbols to python-mode Mark Oteiza
2015-09-20 22:48 ` Xue Fuqiao
2015-09-21  0:53   ` Mark Oteiza
2015-09-21  2:20     ` Stefan Monnier
2015-09-22  6:55       ` Richard Stallman
2015-09-22 12:44         ` Stefan Monnier
2015-09-22 14:42           ` Rasmus
2015-09-22 22:02           ` Richard Stallman
2015-09-23  6:22           ` Achim Gratz
2015-09-23  7:13             ` Eli Zaretskii
2015-09-23  8:04               ` David Kastrup
2015-09-23 14:12               ` Xue Fuqiao
2015-09-23 16:15                 ` Eli Zaretskii
2015-09-23 16:52                   ` David Kastrup
2015-09-23 17:09                     ` Eli Zaretskii
2015-09-23 17:58                       ` David Kastrup
2015-09-23 19:24                         ` Eli Zaretskii
2015-09-23 19:39                           ` David Kastrup [this message]
2015-09-23 19:48                             ` Eli Zaretskii
2015-09-23 19:56                               ` David Kastrup
2015-09-23 20:04                                 ` Eli Zaretskii
2015-09-23 20:10                                   ` David Kastrup
2015-09-23 19:38                         ` Paul Eggert
2015-09-23 19:46                           ` David Kastrup
2015-09-23 20:15                             ` Paul Eggert
2015-09-23 21:40                               ` David Kastrup
2015-09-24  1:16                                 ` Stephen J. Turnbull
2015-09-24  3:57                   ` Xue Fuqiao
2015-09-24 14:31                     ` Eli Zaretskii
2015-09-23 19:07               ` Achim Gratz
2015-09-23 19:42                 ` Eli Zaretskii
2015-09-24  8:06               ` Xue Fuqiao
2015-09-24  8:35                 ` David Kastrup
2015-09-24 10:33                   ` Kaushal Modi
2015-09-24 14:32                     ` Eli Zaretskii
2015-09-24 13:06                   ` Xue Fuqiao
2015-09-24 14:32                   ` Eli Zaretskii
2015-09-28  7:17             ` Dmitry Gutov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87fv249b7i.fsf@fencepost.gnu.org \
    --to=dak@gnu.org \
    --cc=Stromeko@nexgo.de \
    --cc=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=xfq.free@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.