This is the mail archive of the
guile-emacs@sourceware.cygnus.com
mailing list for the Guile project.
Re: Emacs Scheme interface
- To: Keisuke Nishida <kxn30 at po dot cwru dot edu>
- Subject: Re: Emacs Scheme interface
- From: Kalle Olavi Niemitalo <tosi at stekt dot oulu dot fi>
- Date: 28 Mar 2000 15:01:03 +0300
- Cc: guile-emacs at sourceware dot cygnus dot com
- References: <m3ln33ege5.fsf@kei.cwru.edu>
Keisuke Nishida <kxn30@po.cwru.edu> writes:
> It is easy to define point so that (point) returns a number,
And I think it should be defined that way.
> but mixing both normal imported functions and other special
> versions such as the (point) mentioned above may be very
> confusing.
If a Lisp reference is needed, one can call
(lisp-eval '(current-global-map)).
> 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).
If Emacs Scheme treated keymaps as opaque objects like XEmacs
does, that would be easier to solve. But I suppose RMS wouldn't
approve that.
> Some requires defining new Scheme object in onder to get proper
> processing (e.g., buffers).
That's right. They should probably also be associated with GOOPS
classes.
> People may define a new module (emacs api) (or whatever)
> and put new definitions in it.
IIRC, SCWM keeps its modules under (app scwm ...). Perhaps Emacs
modules should be (app emacs ...).
> Unfortunately, I don't have enough time to work on this for a while.
> But let's start discussing.
I would really like thread support in Emacs Scheme. Multiple
threads should be able to process different buffers at the same
time. Perhaps the "current buffer" should be thread-local.