  This directory contains the new runtime-support for GNU epsilon.


  This new runtime support consists in an *abstract* machine rather
than a *virtual* machine; there is no interpretation requried. The new
compiler, written in epsilon (not yet ready) will generate code for
the epsilon Abstract Machine which is then translated into C and
finally compiled into native machine code with an optimized C compiler
such as the GCC. Compared with the old LVM, performance is way better.
  The epsilon Abstract Machine has *registers*; the stack is not
necessarily needed for temporaries, and this leads to another
performance improvement.

  The eAM garbage collector now exists, works, and is quite fast. It
is not yet incremental/parallel, but this will be worked on. The
eAM garbage collector is portable on any platform supporting POSIX
threads, and architecture-indipendent. This is the primary reason it
was written.

  It is also be possible to translate eAM code into Scheme, instead of C.
This will enable using epsilon as an extension language, making the GNU
Guile interpreter (embedded in applications) interpret the generated
Scheme code.

  The code should be well-structured and easy to extend.
