[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: What's the spec for emacs lisp virtual machine ?
From: |
Emmy Noether |
Subject: |
Re: What's the spec for emacs lisp virtual machine ? |
Date: |
Wed, 08 Dec 2010 15:21:36 -0000 |
User-agent: |
G2/1.0 |
On Jul 23, 10:57 am, Barry Margolin <bar...@alum.mit.edu> wrote:
> In article
> <61a26ed5-80eb-4175-b7c4-162a1ce21...@e5g2000yqn.googlegroups.com>,
> Fren Zeee <frenz...@gmail.com> wrote:
>
> > portability does not require VM, it only requires C while emacs
> > interprets the lisp code. a diff command in C is portable over
> > computers because its written in C. not because of a VM.
>
> An interpreter *is* a VM. The "machine language" of this VM is the
> language being interpreted.
>
> Maybe what you're really asking is whether we need byte code? That's
> just an optimization. Compiling to machine code is even more of an
> optimization, but then the result is not portable. So a byte code VM is
> a compromise between source code interpretation and machine code
> compilation.
This clarified for OP the confusion Pascal sowed by bringing in C as a
VM. IMHO OP wanted explanation of the VM by a state diagram, some
architectural design or code walkthrough.
Its written on wiki that the effort to make a portable compiler
emitting machine code is more than the effort to write a VM to enable
portability of the compiled byte-code. Only someone familiar with
Pascal p-code (probably the first appearance of byte-code) can explain
this point, or one who has thoroughly read and understood the files
Pascal mentioned. He probably believes he does as he shares the name
with the lingo ;)
Re: What's the spec for emacs lisp virtual machine ?, mdj, 2010/12/08