[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
PC Scheme Implementation Information
The following description of TI's PC Scheme product is a (belated)
response to Jonathan's request for implementation information:
Implementation: PC Scheme
Developed by: Texas Instruments Computer Science Lab
Supported by: Texas Instruments Digital Systems Group
Hardware: TI Professional and TI Business-Pro Computers,
IBM PC, PC/XT, PC/AT and IBM compatibles
Operating Systems: MS(tm)-DOS 2.1 (PC-DOS) or better (at least 320K, dual
Price/Availability: List price - $95, available in December 1985
Implementation: Incrementally compiled to byte-codes
Intended Use: Education, research, and support of AI software on PCs
PC Scheme is an implementation of Scheme for the TI Professional
Computer and IBM(r) Personal Computer families. The product
consists of an optimizing compiler, a byte-code interpreter, extensive
run time support, an interactive, display-oriented editor, a language
reference manual, and a user's guide. The system was developed on the
TI Professional Computer in Scheme itself, with critical run time
routines coded in C and assembly language for increased performance.
PC Scheme provides all the essential and most of the optional features
of the Revised Revised Report on Scheme. It fully supports the
dialect used in the book "Structure and Interpretation of Computer
Programs" by Abelson and Sussman as well as many extensions developed
at Indiana University, MIT, and TI. These include first-class engines
and environments and an experimental, object-oriented programming
system with dynamic multiple inheritance called SCOOPS. Data type
support includes symbols, lists, vectors, strings, fixnums, bignums,
flonums (64 bit IEEE floating point), characters, closures,
continuations, environments, and I/O ports.
Evaluation is based on incremental compilation to byte-coded "virtual
machine" code which is emulated using threaded code techniques.
Informal benchmarks, including some of the Gabriel set, show PC Scheme
programs to be about 3-10 times faster than interpreted IQLISP(tm) and
2-4 times faster than interpreted Golden Common LISP(tm).
PC Scheme is oriented primarily towards compilation and fast execution
rather than extensive source-level debugging. However, it does
provide trace and breakpoint facilities and an interactive Inspector
with commands to display and manipulate call stack frames and lexical
environments, edit variable bindings, trace back through a chain of
procedure calls, and evaluate expressions in the environment of a
breakpoint. All user-correctable errors trap to the Inspector.
The display-oriented editor supplied with PC Scheme is a subset of
EDWIN, a version of EMACS written by the Scheme project at MIT and
adapted to PC Scheme by TI. 512K bytes of RAM are required to use
Other PC Scheme run time support includes windowed screen input/output,
graphics, a pretty-printer, and an editor of in-memory list structures.
Compiled files can be converted to a "fast-load" format to speed up load
times. Files containing variable definitions can be "autoloaded" on
demand. A Winchester disk minimizes the inconvenience of autoloading,
but is not required.
Documentation includes a 286-page language reference manual and a
93-page user's guide. Neither manual attempts to be a tutorial manual
for Scheme itself.
PC Scheme is being used extensively within Texas Instruments and is
the basis for future releases of TI's PC-based AI products, including
Arborist (tm) and the Personal Consultant Plus (tm). It is currently
in use at approximately 25 universities in various settings (classes,
PC Scheme may be ordered beginning November 15 for shipment in
December. To order, write to Texas Instruments, 12501 Research Blvd.,
MS 2151, Austin, TX 78759 and ask for TI Part number #2537900-0001.
You may also order by telephone using MasterCard or VISA by calling
Questions or comments on the product may be directed to the address
given above. We also welcome less formal technical questions and
comments, which may be directed via CSNET to Oxley@TI-CSL.