what is XLISP-PLUS

The XLISP-PLUS Home Page

XLISP-PLUS is an evolutionary improvement over David Betz's Xlisp 2.1. It contains many enhancements and bug fixes.

XLISP-PLUS contains the work of many individuals. While most have contributed their efforts to the public domain, a few reserve their copyrights when Xlisp is used commercially. For that reason, XLISP-PLUS is only distributed for non-commercial (or educational) use. Don't ask me about commercial applications.

By the way, I've been dabbling in Lisp since first learning it back in 1972, and I wrote a Lisp interpreter for the PDP-11 minicomputer in the mid-70's which was used by several universities.

XLISP-PLUS was designed to run under multiple platforms. Executable files are available here for several 80x86 based operating systems. In other cases, you will need a C compiler and can compile the provided code. See the sections below for your system to determine the files you need.

There is another Xlisp version available with different features: XLISP-STAT (Web site). It has a robust statistics package built-in, and is available for multiple platforms. The author of XLISP-STAT is Luke Tierney.

Users of UNIX with X-Windows will probably be interested in the XLISP-PLUS derivative WINTERP 2.10 (Web site) by Niels Mayer.

David Betz recently came out of Xlisp retirement (he had been working on XScheme) and has produced XLISP 3.0 which is based on XScheme and is available at his web page.

XLISP-PLUS had been kept at version 2.1, with versions changes denoted by suffix letter in anticipation of Xlisp 2.2 or later. Since Xlisp 3.0 is based on XScheme, I do not intend to keep the release numbers in sync anymore. Therefore the current version is now XLISP-PLUS 3.04, which supercedes 2.1H. In general, it has more features than Xlisp 3.0, however Xlisp 3.0 does have a bytecode compiler and probably will run faster.


Note: these files are version 3.04, revised October 9, 1999 and replace earlier files. 3.01 fixes some bugs of 3.0, and has improved documentation as well as a couple extra utilities. 3.02 fixes some bugs of 3.01, adds support for BeOS. 3.03 fixes some bugs in 3.02 and can be compiled with Microsoft Visual C++ and Borland C++ Builder as well as older compilers. 3.04 fixes several bugs.

Version 3.04 was originally released January 2, 1999, but had an error in the MEMBER function. A revision was posted January 9, but still had a problem which was fixed October 9, and is currently on this site (with the exception of the OS/2 executable. This error has been fixed with this revision.

In July of 2000, a small fix was applied to allow space characters in path names in the 32 bit Windows version. The version number is unchanged.

The documentation is behind the current release. I'm going to fix it up as my next XLISP-PLUS project, perhaps this Winter, but certainly by Spring. (Obviously, I'm way behind on this, not that I'm not mentioning which year!) Distribution will be in PDF, with HTML for "help" files.

Added functionality of 3.0:

  • Implementation of INSPECT, DESCRIBE, and DOCUMENTATION.
  • Integration of DOCUMENTATION with existing GLOS function.
  • TRACEMETHOD and UNTRACEMETHOD allows the trace facility to work on XLISP-PLUS methods.
  • Better name conflict handling in package functions.
  • Revised Windows help file.
  • Lots of nits have been fixed.

Here is the change log for XLISP-PLUS going back a few years.


Y2K Compliance

There are no functions in XLISP-PLUS that make use of dates, therefore XLISP-PLUS, in all past and current versions, is Y2K compliant. Since source code is provided, it is possible for individuals to modify the program to use dates in a non-compliant fashion. Of course, I have no control over XLISP-PLUS obtained from other than this site.


Platform Independent Files

Required files (175k) contains all the XLISP files required for operation, as well as a tutorial and various "readme" files. This archive is the same for every platform. You need this!

Unless you want to punish yourself, I suggest you download documentation. Note that there is on-line documentation for all functions. In addition, if you use the Microsoft Windows version you might be satisfied with the Help File version of the manual. Fetch either version 3.0 ASCII (text, 89k) documentation or Postscript (144k) documentation or Microsoft Word 6.0 format (350k) improved documentation formatted for A6 or 8.5x11 pages.

Source code (356k) is available for all versions in one archive. If executable files are available for your platform, you need not bother to download this.


Microsoft Windows (also OS/2)

Executable files (438k) in two versions (both are included in the archive). The first is a 16 bit executable for Microsoft Windows 3.1 with an 80386 or better processor. This will also work with OS/2. The second is a 32 bit executable for Windows 95, 98, or NT. It no longer works with Win32s or OS/2. This archive also has on-line help in the form of a Windows HLP file.


Linux

You will need to compile from the source code (356k). Pretend you have a SYSV Unix system, and define POSIX, and you will have a working implementation. I'm working on adding the spiffy command editing of the MS/DOS version and when completed I'll have the new source code and an executable here.


IBM OS/2

This archive (190k) contains the executable program. This 32 bit version does not use the Presentation Manager. Long file names (on HPFS volumes) are supported. NOTE that users should recompile the source to get a version with the MEMBER function fixed. I'd appreciate anyone who does this to let me know and send me the EXE file so I can update this archive.


Microsoft MS-DOS

If you have an 80386 or better processor, you can run the 32 bit protected mode (174k) version. This program uses DJ Delorie's GO32 extender and is compatible with DPMI, VCPI, and XMS. Otherwise, you will need to run the generic MS/DOS (138k) version which will run on just about anything. Either of these will run in a DOS session under OS/2 or Windows 95 or NT.

Note that the generic version is very limited in the size of the program that it will run. Also, if performance is an issue, the fastest version is that for OS/2, followed by the 32 bit DOS version, then the 32 bit Windows version. The two 16 bit versions (DOS and Windows) should be avoided unless you absolutely have to run them.


UNIX, BeOS, IBM Mainframe, AMIGA

You will need to compile from the source code (356k).


Windows CE

This port is based on XLISP-PLUS version 2.1g. The author of this port port is George Hadden. You can download it here (284k).


MacIntosh

The generic code now works on a Mac. Download this file (193k) for the executable. Note that this is very old, and not for the Power-PC Macs! Source file update will come soon. There is also an older version available. It's maintained by Brian Kendig. I expect that it can be compliled from source as a UNIX system with recent OSes.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章