[comp.lang.lisp] New release of Elk available

net@tub.UUCP (Oliver Laumann) (09/14/90)

A new release of the Elk Scheme implementation ("Extension Language Kit")
is available for anonymous FTP on

  mcsun.eu.net   [192.16.202.1]  (~ftp/programming/languages/elk-scheme/) and
  funic.funet.fi [128.214.6.100] (~ftp/pub/unix/languages/scheme/).

The file name is elk-1.2.tar.Z (0.5 MBytes).

Several people have contributed to this version, among them Don Hopkins
(SPARC port), George Hartzell (MIPS port, ECOFF support), Zalman Stern
(IBM-RT), Paul Breslaw (HP9000), and Carsten Bormann (portable alloca).
Piet Beertema and Tero Mononen kindly helped me to put the distribution
on the above FTP sites.

Major improvements with respect to version 1.0 (which was posted to
comp.sources.misc last year) are:

    - support for X11 Release 4
    - interface to the OSF/Motif widgets
    - better documentation
    - ported to new machines (Sun-4, HP9000, MIPS, and others)
    - a "portable version" of the software can be installed on new
      machines without requiring assembly language support any longer

If you don't know what Elk is, or if you don't know whether you want it,
you can read the release notes at the end of this message.

Regards,
--
    Oliver Laumann, Technical University of Berlin, Germany.
    pyramid!tub!net   net@TUB.BITNET   net@tub.cs.tu-berlin.de


----------------------------------------------------------------------------

Elk 1.2. Release Notes

Elk (Extension Language Kit) is a Scheme interpreter intended to be
used as a general extension language; it is also useful as a stand-alone
implementation of Scheme.

One purpose of the Elk project is to end the recent proliferation of
mutually incompatible Lisp-like extension languages.  Instead of
inventing and implementing yet another extension language, application
programmers can link the Scheme interpreter into their application
in order to make it extensible and highly customizable.

The Elk project was started in 1987 to support ISOTEXT, an ODA-based
document system (a WYSIWYG editor) that is being developed at the
Technical University of Berlin.  Elk has been successfully demonstrated
as the extension language kernel of ISOTEXT, e.g. at the Hanover Fair 1989.

We feel that Scheme is better suited as a general extension language
than other Lisp dialects:  it is sufficiently small to not dwarf the
application it serves and to be fully understood with acceptable
effort; it is orthogonal and well-defined.  In addition, Scheme has
been recognized to be mature enough for national and international
standardization (IEEE P1178, ISO/IEC JTC1/SC22/WG16).

The Elk Scheme implementation is R^3RS compatible (with some minor
exceptions that are listed in the documentation); future releases will
conform to the R^4RS and/or P1178 as soon as the respective standards
become available.

Non-standard features of the Scheme implementation include:

      o  dynamic loading of object files
      o  creation of an executable image from the running
         interpreter (``dump'')
      o  a macro facility
      o  environments as first-class objects
      o  dynamic-wind, fluid-let
      o  autoloading, provide/require

The Scheme interpreter can easily be extended by application-specific
new types and primitive procedures.  Such extensions are typically
written in C or C++ and dynamically loaded into the running interpreter.

The current release of Elk includes several such extensions, e.g.
interfaces to the X11 Xlib and to the application programmer interface
of the Xt intrinsics, and interfaces to the Athena, HP (obsolete), and
OSF/Motif widget sets.

The software has been tested on Sun-3s and Sun-4s with SunOS, ISI 680x0
with 4.2BSD and 4.3BSD, Vax with 4.3BSD and Ultrix, IBM RT with AOS,
Intel 80386 with System V Release 3, Sequent Symmetry, Sony News,
DECStation 3100, and HP9000 with HP-UX.  Porting instructions are included.
Dynamic loading of object modules is not supported on some systems.