### xlispstat-3.52.9 README file

    This is XLISP-STAT 2.1 Release 3 for generic bsd systems (with simple
    tektronix graphics from the gnuplot system), or X11.

    XLISP-STAT is a statistical environment based on a dialect of the Lisp
    language called XLISP. Originally developed for the Apple Macintosh,
    XLISP-STAT is now also available for UNIX workstations using the X11
    window system and for Microsoft Windows. To facilitate statistical
    computations, standard Lisp functions for addition, logarithms, etc.,
    have been modified to operate on lists and arrays of numbers, and a
    number of basic statistical functions have been added.  Many of these
    functions have been written in Lisp, and additional functions can be
    added easily by a user.  Several basic forms of plots, including
    histograms, scatterplots, rotatable plots and scatterplot matrices are
    provided.  These plots support various forms of interactive
    highlighting operations and can be linked so points highlighted in one
    plot will be highlighted in all linked plots. Interactions with the
    plots are controlled by the mouse, menus and dialog boxes. An
    object-oriented programming system is used to allow menus, dialogs,
    and the response to mouse actions to be customized.

    Updates to this system will be posted periodically in the anonymous
    ftp directory of umnstat.stat.umn.edu (128.101.51.1).

    A tutorial introduction to the system is available. It is written
    primarily for the Macintosh version, but the differences to the UNIX
    version are minor; see below. The tutorial is available as a set of
    LaTeX files in xlispstat.doc.tar.Z at the ftp address above.

    For further information contact

    		Luke Tierney
    		School of Statistics
    		University of Minnesota
    		Minneapolis, Mn. 55455

    		luke@umnstat.stat.umn.edu

    			COPYRIGHT INFORMATION

    *******************************************************************************
    * XLISP-STAT 2.1 Copyright (c) 1990, by Luke Tierney
    * XLISP version 2.1, Copyright (c) 1989, by David Betz.
    *
    * Permission to use, copy, modify, distribute, and sell this software and its
    * documentation for any purpose is hereby granted without fee, provided that
    * the above copyright notice appear in all copies and that both that
    * copyright notice and this permission notice appear in supporting
    * documentation, and that the name of Luke Tierney and David Betz not be
    * used in advertising or publicity pertaining to distribution of the software
    * without specific, written prior permission.  Luke Tierney and David Betz
    * make no representations about the suitability of this software for any
    * purpose. It is provided "as is" without express or implied warranty.
    *
    * LUKE TIERNEY AND DAVID BETZ DISCLAIM ALL WARRANTIES WITH REGARD TO THIS
    * SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS,
    * IN NO EVENT SHALL LUKE TIERNEY NOR DAVID BETZ BE LIABLE FOR ANY SPECIAL,
    * INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
    * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
    * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
    * PERFORMANCE OF THIS SOFTWARE.
    *
    * XLISP-STAT AUTHOR:
    *               Luke Tierney
    *               School of Statistics
    *               University of Minnesota
    *               Minneapolis, MN 55455
    *               (612) 625-7843
    *
    *       Email Address:
    *               internet: luke@umnstat.stat.umn.edu
    *
    * XLISP AUTHOR:
    *              David Betz
    *              P.O. Box 144
    *              Peterborough, NH 03458
    *              (603) 924-4145
    *******************************************************************************

    (David Betz has kindly given his permission to remove the restriction
    on commercial use from the copyright. The new copyright is adapted
    from the copyright in winterp as distributed with X11 R4.)

    	   MAJOR DIFFERENCES BETWEEN UNIX AND MAC VERSIONS

    Examples and sample data sets are located in a library directory. To
    access them you can use the functions load-data and load-example. For
    example, to load the data sets used in the tutorial technical report
    type

    	(load-data "tutorial")

    The library directory is given by the variable *default-path*; data
    and examples are in the subdirectories Data and Examples.

    The UNIX xlispstat versions are designed to run on a standard
    terminal.  This means parentheses matching is not available. If you
    are a gnu emacs user you can set up gnu emacs to allow it to run
    xlispstat for you.  The files my.emacs and xlispstat.el in the emacs
    directory are examples of how to do this.

    If you are a vi user you may want to use the -l option for editing
    Lisp files.

    The basic UNIX version includes some Tektronix graphics based on the
    gnuplot routines. The functions plot-points and plot-lines should work
    but all other high lever graphics functions will signal an error when
    used in this system.  Low level graphics methods will probably result
    in a crash.

    The X11-based system should operate like the standard unix-based
    system, with basic tektronix graphics, when not run under the
    appropriate window manager (i. e. on a terminal with the DISPLAY
    environment variable set).

    Under X11 there is a close button and a menu button. For plot
    interaction all mouse buttons are identical. To extend a selection
    hold down the shift key as you click.

    In the X11 version a "Save to File" is available in the plot menus.
    This item brings up a dialog asking for a file name; if the ok button
    is pressed an image of the plot is saved as a postscript file.  This
    takes a while under X11 (20 - 30 seconds on a sun 3/50).

    X11 scroll bars on plots (name-lists in particular) work like xterm
    scroll bars.

    X11 dialog sliders sliders look something like macintosh sliders.
    Sliders and scroll bars are the only items that interpret different
    mouse buttons differently, and thus the only point at which a
    three-button mouse is assumed: In the body of a slider the left button
    decreases by a page increment, the right button increases by a page
    increment and the middle button drags the thumb around

    			  X11 FEATURES/BUGS

    Under X11 where plots and modeless dialogs show up on your screen, and
    how large they end up being, is up to the window manager. Requests you
    make may be honored under one manager but not under another.

    Several options can be set using the X11 resource management
    facilities.  Options controlling appearance are

    xlisp*menu*titles:     on for a title on a menu, off otherwise
    xlisp*menu*font:
    xlisp*dialog*font:
    xlisp*graph*font:

    There are also a few options controlling performance. These are

    xlisp*graph*fastlines:   on to use 0 width lines
    xlisp*graph*fastsymbols: on to use DrawPoints instead of bitmaps
    xlisp*graph*motionsync:  on to use XSync
    xlisp*graph*icccm:       on to use (almost?) ICCCM-compliant dialogs
    xlisp*graph*waitformap   on to wait for MapNotify event before drawing

    By default all are on. (This default can be changed by editing the
    include file StX11options.h.) That seems to give the best performance
    on a DECstation 3100. It may not be the best choice on other
    workstations.  You can also use the function x11-options to change
    these five options within lisp. The fastlines option will not take
    effect immediately when changes this way but will affect the next plot
    created. The other two options do take effect immediately.

    The only way to set the display to be used is to set the DISPLAY
    environment variable before starting up xlispstat.

    On some color or greyscale X11 implementations you may get X errors
    when you exit from xlispstat. I *think* this is due to a bug in the
    X11 server. Try defining the variable SERVER_COLOR_FREE_PROBLEM by
    uncommenting its define line in StX11options.h.

    	    FOREIGN FUNCTIONS, DYNAMIC AND STATIC LOADING

    Foreign function calling is supported on some UNIX systems. The basic
    calling conventions are similar to those in New S and are described in
    an appendix to the XLISP-STAT tutorial. To enable foreign function
    calling define

    FOREIGN_FLAG = -DFOREIGNCALL
    FOREIGN_FILE = <system>-foreign.h

    where <system> is appropriate for your system. On all supported
    systems listed in the machines directory the configure script shold
    sutomatically set things up for dynamic loading. If your system is not
    supported, you may be able to adapt one of the existing ones.

    At present there is no simple support for users to do static loading,
    like in New S. Instead, you can use the EXTRAOBJS and EXTRALIBS
    variables in the Makefile. If static loading is important, adding the
    S-like facility for user loading should be quite easy.

    This (and the use of IEEE arithmetic in printing) is the only aspect
    of XLISP-STAT on UNIX systems that involves serious machine
    dependencies. If you can live without foreign function calling you can
    ignore the machines directory.