public inbox for guile-emacs@sourceware.org
 help / color / mirror / Atom feed
From: Keisuke Nishida <kxn30@po.cwru.edu>
To: guile-emacs@sourceware.cygnus.com
Subject: Emacs Scheme interface
Date: Mon, 27 Mar 2000 22:51:00 -0000	[thread overview]
Message-ID: <m3ln33ege5.fsf@kei.cwru.edu> (raw)

Hello,

Since we have now got the ability to access Lisp functions from
Scheme programs, it may be about the time to think about a better
Emacs Scheme interface.

The current implementation of importing Lisp functions is not
quite convenient.  We have to write ((point)) instead of (point)
to get the point as a number.  It is easy to define point so that
(point) returns a number, but mixing both normal imported functions
and other special versions such as the (point) mentioned above may
be very confusing.  We should think about a whole new set of Emacs
Scheme procedures.

Some functions can be easily imported by always converting return
values to Scheme objects.  Some may be difficult because modifying
the Lisp value is essential (e.g., keymaps).  Some requires defining
new Scheme object in onder to get proper processing (e.g., buffers).

Since we have to think about all Lisp primitives, this will take a
long time.  But we have to do that step by step.  This work will be
useful in the future because we can reorganize Emacs primitives/
procedures/macros in terms of Scheme.  The new API will not be changed.

As soon as the next version of Guile Emacs is released, this project
can be started.  People may define a new module (emacs api) (or whatever)
and put new definitions in it.  The new API should be documented so
that people do not confuse.

Unfortunately, I don't have enough time to work on this for a while.
But let's start discussing.

-- Kei

             reply	other threads:[~2000-03-27 22:51 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2000-03-27 22:51 Keisuke Nishida [this message]
2000-03-28  4:01 ` Kalle Olavi Niemitalo
2000-03-28 10:27   ` Keisuke Nishida
2000-03-28 11:37     ` Ken Raeburn
2000-03-28 23:06     ` Kalle Olavi Niemitalo
2000-03-29 16:57       ` Keisuke Nishida
2000-03-28 11:43 ` Kalle Olavi Niemitalo
2000-03-28 12:23   ` Keisuke Nishida
2000-03-29  2:33     ` Kalle Olavi Niemitalo
2000-03-29 17:09       ` Keisuke Nishida
2000-04-30 12:08         ` Kalle Olavi Niemitalo
2000-03-31 17:48 ` Keisuke Nishida
2000-03-31 22:42   ` Klaus Schilling
2000-04-01  9:02     ` Keisuke Nishida

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=m3ln33ege5.fsf@kei.cwru.edu \
    --to=kxn30@po.cwru.edu \
    --cc=guile-emacs@sourceware.cygnus.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.
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).