Release 2.0 of Elk, the Extension Language Kit, is now available.

Elk is a Scheme interpreter intended to be used as a general, reusable
extension language subsystem for integration into existing and future
applications.  Elk can also be used as a stand-alone implementation of
the Scheme programming language.

Elk supports several additional language features to increase its
usability as an extension language, among them dynamic, incremental
loading of object files and `freezing' of a fully customized application
into a new executable file (`dump').

The current release of Elk includes several dynamically-loadable
extensions, among them interfaces to the X11 Xlib and to the application
programmer interface of the Xt intrinsics, and interfaces to the Athena
and OSF/Motif widget sets.  These extensions are especially useful for
application writers whose applications have graphical user-interfaces
based on X; they also can be used to interactively explore X and its
libraries and as a platform for rapid prototyping of X-based
applications.

Release 2.0 is a major new release, as some of the interfaces between
the interpreter kernel and extensions have been simplified and made more
general, i.e. minor massaging of existing extensions will be required
(see file MIGRATE).

The distribution has been tested on several new systems (such as IBM
RS/6000, HP9000/700, SGI, Sony NEWS; see the file MACHINES).
The build and install process has been simplified significantly;
system-specific configuration files are supplied for the systems
on which Elk has been tested.

Dynamic loading of object files is supported on all systems that have a
functional "ld -A" interface, as well as the NeXT and the HP9000/700.

Major internal reorganization has simplified porting Elk to further new
systems (assembly language support and a stack-extending version of
"alloca" are no longer required).

Nearly all artificial limitations have been removed (such as number of
before-GC and after-GC functions and of statically GC-linked objects).

Elk is now easily usable with ANSI C and C++ (as well as with pre-ANSI C).

A number of hooks are provided that will allow the seamless insertion of
a new generational/incremental garbage collector that is planned for
release 2.1.


Elk release 2.0 can be obtained via anonymous FTP from
tub.cs.tu-berlin.de (pub/elk/elk-2.0.tar.Z), and from
export.lcs.mit.edu (contrib/elk-2.0.tar.Z).


--
Oliver Laumann     net@cs.tu-berlin.de   net@tub.BITNET
Carsten Bormann   cabo@cs.tu-berlin.de  cabo@tub.BITNET
