guile-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] Avoid `SCM_VALIDATE_LIST ()'


From: Han-Wen Nienhuys
Subject: Re: [PATCH] Avoid `SCM_VALIDATE_LIST ()'
Date: Thu, 04 Sep 2008 21:10:40 -0300
User-agent: Thunderbird 2.0.0.16 (X11/20080723)

Andy Wingo escreveu:
> On Sun 31 Aug 2008 17:12, Han-Wen Nienhuys <address@hidden> writes:
> 
>> On a tangent, is anyone still seriously considering to run Emacs atop GUILE?
>> (It looks a bit like a travesty if we're trying to accomodate elisp while
>> also trying to follow standards like SRFI-x and RxRS)  
> 
> I think it makes a *lot* of sense to compile elisp to the VM. I don't
> plan on doing so myself, but if the VM gets good enough, it could be
> enhanced with the instructions that elisp needs, if any, and it would be
> possible to run emacs lisp code, and possibly even emacs itself, on
> guile.
> 
> Guile-VM already has a language-agnostic compiler, repl, etc. Scheme
> compilation starts with a language-specific reader then translation to
> GHIL, at which point the generic compilation proceeds. You could plug in
> an elisp reader and translator (see
> module/language/scheme/translate.scm) to GHIL, or compile directly to
> GLIL.

Well, I remember having a flamewar with RMS about language agnosticism
and running emacs on GUILE about 8 years ago, and I don't think we
have progressed much since then.  Extrapolating this pace,  I think
it's a waste of time.

> I don't know where the boundary lies regarding C primitives, though. I
> think we'll eventually want to make VM-implemented functions as fast or
> faster than the C ones, through a tracing JIT or something. So you could
> make elisp reference different C primitives, or implement its primitives
> in elisp (or scheme, or whatever), or make our C primitives do both.

Actually, on a complete tangent:

There is a large industry movement trying to optimize the hell out of
JavaScript, since it is used in browsers.  How much sense does it make
to translate Scheme or LISP to JavaScript and have (for example) V8 or
tracemonkey handle it?  I'm not very familiar with JavaScript, but I
recall it shared lots of characteristics with LISP.  I am fairly
certain that we will never out-optimize (for example) V8.



-- 
 Han-Wen Nienhuys - address@hidden - http://www.xs4all.nl/~hanwen





reply via email to

[Prev in Thread] Current Thread [Next in Thread]