shebs@UTAH-CS.ARPA.UUCP (05/16/86)
This is to announce the availability of the Portable Common Lisp Subset (PCLS), a Common Lisp subset developed at the University of Utah which runs in Portable Standard Lisp (PSL). PCLS is a large subset which implements about 550 of the 620+ Common Lisp functions. It lacks lexical closures, ratios, and complex numbers. Streams and characters are actually small integers, some of the special forms are missing, and a number of functions (such as FORMAT) lack many of the more esoteric options. PCLS does include a fully working package system, multiple values, lambda keywords, lexical scoping, and most data types (including hash tables, arrays, structures, pathnames, and random states). The PCLS compiler is the PSL compiler which produces very efficient code, augmented by a frontend that does a number of optimizations specific to Common Lisp. Gabriel benchmarks and others show that PCLS programs can be made to run as fast as their PSL counterparts - almost all uses of lambda keywords are optimized away, and a type declaration/inference optimizer replaces many function calls with efficient PSL equivalents. PCLS has been used at Utah and elsewhere for about 6 months, and a number of programs have been ported both to and from PCLS and other Common Lisps. PCLS is being distributed along with an updated version of PSL (3.2a). We require that you sign a site license agreement. The distribution fee is $250 US for nonprofit institutions, plus a $750 license fee for corporations. Full sources to both PSL and PCLS are included along with documentation on the internals and externals of the system. At present, we are distributing PCLS for 4.2/4.3 BSD Vax Un*x and for Vax VMS. Releases for Apollo and Sun are anticipated soon, and versions for other PSL implementations are likely. If interested, send your USnail address to: Loretta Cruse Computer Science Department, 3160 MEB University of Utah Salt Lake City UT 84112 cruse@utah-20.ARPA {seismo, ihnp4, decvax}!utah-cs!cruse.UUCP Technical questions about PCLS, flames about absence of closures, etc may be directed to shebs@utah-cs.ARPA, loosemore@utah-20.ARPA, or kessler@utah-cs.ARPA.