This book is a complete user's guide and reference manual for Chez Scheme Version 7. It describes each language extension in detail and provides a number of userful hints and example programs to make programming in Chez Scheme more productive and enjoyable. Topics covered include debugging, interacting with programs and functions written in other programming languages, data abstraction, syntactic abstraction, modules, generic ports, numeric operations, compiler controls, system operations, storage management, and more.
R. Kent Dybvig is the principal developer of Chez Scheme, the author of The Scheme Programming Language, Third Edition, and an active participant in the Scheme revised report authors committee. He received his PhD from The University of North Carolina at Chapel Hill and is a professor in the computer science department at Indiana University, where his research and teaching center around the design and implementation of programming languages.
The cover illustration was created by Jean-Pierre Hébert.
The printed version of this book was created with LaTeX from extended LaTeX sources with the help of a preprocessor written in Scheme. The preprocessor handles extensions for incorporating arbitrary verbatim Scheme code and various other features not directly supported by LaTeX.
The HTML version was created from the preprocessed sources for the printed version by a separate Scheme program that performs a LaTeX to HTML conversion. In addition to the extended LaTeX source files, this program takes as input the .aux and .bbl files produced by a complete LaTeX/BibTeX run of the document in order to support labels and page references in the text, summary of forms, and index. As it runs, the program produces a .haux file containing urls for the labels, bibliographic entries, and index entries; as with LaTeX, a second run of the program is needed to achieve proper cross-referencing.
Most of the images and certain mathematical formulas included in the HTML version were produced with the help of LaTeX, dvips, ghostscript, and various programs from the netpbm library.