Scheme Web Resources

You are here: Andrew Ho > Work > Scheme

In my work at Tellme Networks, Inc., I do some programming in Scheme. For those of you unfamiliar with this language—likely most anybody lacking a fairly classical CS background—Scheme is "a statically scoped and properly tail-recursive dialect of the Lisp programming language," "designed to have an exceptionally clear and simple semantics and few different ways to form expressions."

As a consequence, Scheme is also lightweight and efficient to parse, while remaining highly expressive and simple to understand. It's also just a lot of fun to program in.

The R5RS

Scheme programmers referring to the "R5RS" mean the Revised5 Report on the Algorithmic Language Scheme, a complete specification of what a language claiming to be "Scheme" should support. While there are IEEE and ANSI standards for Scheme, the R5RS is more like an Internet RFC—a recommendation that most implementations follow.

While you can find the R5RS in various forms on the internet (including browseable HTML or the original LaTeX source), most of the Postscript and PDF versions use the bitmapped, Type 3 Computer Modern fonts that come with free implementations of LaTeX. These anti-alias poorly under most viewers, making them useless unless printed. Here is a copy of the R5RS created with the Type 1 Computer Modern fonts distributed by the AMS.

Andrew Ho (