On Sat, 2 Dec 2000, David Alan Black wrote:

> > If that were possible, would there be benefits in converting
> > Emacs to use Ruby instead of (e)lisp?  
> 
> It would have to be not so much a conversion as a reimplementation.
> The interdependence between Emacs and Emacs Lisp goes beyond language
> choice or mode.  For one thing, most of Emacs is written in Emacs

That is why I thought it might be possible...

> Lisp.  If you were to rewrite Emacs, you'd really also have to create
> Emacs Ruby, incorporating all the datatypes and primitives of Emacs
> Lisp.  You wouldn't be able to translate something like this:
> 
>   (defun list-buffers-other-window ()
>     "Switch to buffer-list window upon listing buffers"
>     (interactive)
>     (list-buffers)
>     (switch-to-buffer-other-window "*Buffer List*"))
> 
> without implementing buffers in Ruby, and that's just the
> beginning....

OK.  It sounds like it would be *possible*, but too steep
a hill to be worth climbing.

> 
> > I'm thinking of: you'd get more readable code; it might be possible
> > to integrate it tightly with other ruby code, and to C using Ruby's
> > API.  Could it be faster (after tuning)?  Could the Ruby syntax mode
> > be REALLY intelligent if you did it this way?
> 
> I can't comment on Point 1, because I've always found elisp pretty
> readable.  (Considering that it's a programming language :-)  If you're

I have always found lisp unreadable, but I have not come across
a good introduction to it.  I think I take your point though:
any programming langauge of any power looks unreadble to
the outsider.

> interested in integrating Ruby into Emacs, in the sense of being able
> to manipulate Emacs Lisp datatypes directly with Ruby scripts, then it
> might make more sense to think about translating *from* Ruby *to*
> elisp.  (I'm not volunteering, though :-)

I suppose if elisp is implemented in C then there could be
a way, but I think you have successfully squashed my idea, :-)
which is fine, and what I thought might happen.
> 
> 
> David
> 
	Hugh
	hgs / dmu.ac.uk