This is the mail archive of the guile-emacs@sourceware.cygnus.com mailing list for the Guile project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Emacs Scheme interface


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.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]