This is the mail archive of the guile@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 with guile instead of elisp


> From: Mikael Djurfeldt <mdj@nada.kth.se>
> 
> Klaus Schilling <Klaus.Schilling@home.ivm.de> writes:
> 
> > What are the major obstacles/objections to writing an editor that looks almost
> > like GNU emacs, but uses guile instead of elisp as extension language?
> 
> Obstacle: Emacs is a large program.
> 
> Solution: Rewrite part of the C code to use Guile, but keep the ELisp
>           code untouched.
> 

If you keep the whole of Emacs and add Guile + Glue Code, you get a
_very_ large program.  An alternate strategy would be to start with
the basics, say editfns.c, and make a data type called "text" (a smob)
that presents a clean interface so that any Guile program can load
it and have a large editable text buffer.  Then add other things one
at a time, windows, re-display, file I/O, each as a reusable module.
After a while Guile just loads an few editor modules and it _is_ Emacs.

> Requirement: Guile must know how to read ELisp.

It seems to me that if it is possible to get Guile to directly
read ELisp, then it is also possible, and maybe easier, to write
a ELisp->Guile translator that could be run just once to convert
ELisp modules to Guile-Emacs.  

With this approach you get some useful Guile modules early, but
more difficult or less important things might not happen for a
while.  The result is a smaller program.

-- 
     --Keith

This mail message sent by GNU emacs and Linux.
Food, Shelter, Source code.