This directory holds the source code and documentation for the latest release of Elk, the Extension Language Kit. See the file README for an overview of Elk. Here is a brief roadmap for the subdirectories and files included in the distribution. elk-3.0 --+-- README Explains the purpose and release status of Elk | +-- CHANGES Lists the changes between this and earlier releases | of Elk | +-- MIGRATE Explains how C/C++ code (applications or extensions) | written for older versions of Elk may have to be | modified to make it work with this version | +-- INSTALL Instructions for configuring, compiling, and | installing Elk; a brief description of the files that | get installed in the process; and a description of | the structure of the Makefiles and the purpose of | Makefile.local and `build' in each source directory | +-- MACHINES Additional, platform-specific advice for installing | and using Elk, such as compiler bugs, unsupported | features, problems with older OS versions and other | pitfalls | +-- BUGS Information about known problems with this release | +-- TODO Ideas, improvements and projects for future releases | +-- COPYRIGHT The copyright status of the distribution | +-- CONTRIBUTORS | A list of people who have contributed significantly | to Elk; acknowledgments and credits | +-- PATCHLEVEL The current patchlevel | +-- config/ Holds the configuration files with machine- and | site-specific information required for building | Elk. See INSTALL for details. | +-- include/ The include files to be #included by applications | that use Elk as their extension language, and by | extensions to Elk. Including scheme.h from this | directory causes all the other .h files to be | included in the right order. The include files may | or may not use ANSI/ISO-C prototypes, depending on | the config file you have chosen. | +-- scripts/ Shell scripts to link the Scheme interpreter with | extensions (useful on platforms that to not support | dynamic loading of objects), and to create | dynamically loadable objects from .o files. See | INSTALL and scripts/README for details. | +-- src/ The C source files of the Scheme interpreter | +-- scm/ Scheme files that are loaded during runtime. These | are copied to a destination directory specified in | config/site when Elk is installed. | +-- lib --, This directory tree holds the C source for various | | Elk extensions that can be loaded into the Scheme | | interpreter or linked with an application | | | +-- xlib/ The C source files of the X11 Xlib extension | | | +-- xt/ The C source files of the Xt (X11 Toolkit | | Intrinsics) extension | | | +-- xaw/ The Scheme interfaces to the X11 Athena widgets. | | There is one .d file for each widget class. | | Each of these is compiled into a C source file | | when running `make' and then compiled into a | | dynamically loadable object. | | | +-- xm/ The .d files for the Motif widgets | | | +-- unix/ The C source files of the UNIX extension | | | `-- misc/ The C source files of the record extension, the | bitstring extension, the regular expression | extension, and various other dynamically | loadable Elk extensions | +-- doc/ The directory tree holding the documentation for | Elk as troff input files and pre-generated | PostScript files. See doc/README for a roadmap | of the `doc' tree. | | +-- examples --, A collection of demonstration programs for Elk | | and the various extensions (mostly in Scheme) | | | +-- scheme Basic Scheme demos (collected from USENET | | and other sources) | | | +-- xlib Programs demonstrating the Xlib, Athena, | +-- xaw and Motif extensions | +-- xm | | | +-- unix Example programs for the UNIX extension | | | +-- regexp A demonstration of the regexp extension | | | `-- CC A few simple C++ programs demonstrating | use of Elk with C++ applications (see | README in this directory) | `-- util/ Various utilities, some of which may aid in preparing a config file for an as yet unsupported platform.