Scheme resources

Scheme is a simple, dynamically-typed functional programming language. It is a dialect of Lisp, meaning it is related to languages such as Common Lisp and Clojure.
Due to its simplicity, Scheme is often used as a teaching aid in computer science classes and also as a vessel for programming language theory research (especially the Racket dialect).
Since there is no canonical implementation of Scheme, it can be described as a cluster of mutually intelligible dialects rather than a single language.

This page seeks to collect and list English-language Scheme books in one place for easy access. See the notes at the bottom for additional information.


Books

Computer Science

Books that teach computer science concepts using Scheme

Scheme

Books that teach Scheme itself

Theory

Programming language theory books that build upon Scheme

Implementing

Scheme implementation guides

Other


Standards & Specifications

R5RS was the last commonly agreed-upon standard before the Grand Schism, although it is considered to be woefully inadequate today. The previous standards are only of historic interest nowadays.
R6RS and R7RS are the contemporary standards that continue to coexist. R7RS comes in "small" (R5RS-like) and "large" (R6RS-like) versions, although at the time of writing (2020), only the small version has been finalised.


Additional resources

Other repositories

Individual collections

Outdated collections

Implementation documentation

In alphabetical order