[comp.sources.d] ELK - A Extension Language Kit based on Scheme

ramani@modesty.Stanford.EDU (Ramani Pichumani) (08/22/89)

"Elk 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 Scheme interpreter is R^3RS compatible (with some minor exceptions
listed in a separate document); 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 (``unexec'')
      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 widget set and the
HP widget set.

"The software currently runs on Sun-3s with SunOS, ISI 680x0 with 4.2BSD
or 4.3BSD, Vax with 4.3BSD or Ultrix, and Intel 80386 with System V
Release 3.  Porting instructions are included.  Dynamic loading of
object modules is not supported under System V.


Oliver Laumann, Technical University of Berlin, Germany
Communications and Operating Systems Research Group


Currently, the elk distribution can be ftp'd anonymously from either
na-net.stanford.edu or patience.stanford.edu (both have an internet
address of  36.8.0.154 ).  The following files are contained in the
directory pub/elk:

total 861
-rw-r--r--  1 6           13186 Jun 30 07:35 INSTALL
-rw-r--r--  1 6             959 Jul 21 07:33 ORIGIN
-rw-r--r--  1 6            3073 Jul 21 07:33 README
-rw-r--r--  1 6            2698 Jul 26 06:24 RELEASE
-rw-r--r--  1 0          276176 Aug 17 15:57 scheme.tar.Z

Additional archive sites are also being arranged for the near future.

Questions regarding the Elk software should be directed to:

	net@tub.BITNET     Europe: unido!tub!net    World: pyramid!tub!net

Questions about obtaining the source distribution from na-net should
be directed to:

	elk@patience.stanford.edu


-- 
Ramani Pichumani                          E-mail: ramani@na-net.stanford.edu

Department of Computer Science, Margaret Jacks Hall, Room 308,
Stanford University, Stanford, CA 94305 USA
Tel: (415) 723-2902   Fax: (415) 725-7411
Ramani Pichumani                          E-mail: ramani@na-net.stanford.edu

Department of Computer Science, Margaret Jacks Hall, Room 308,
Stanford University, Stanford, CA 94305 USA