SRFI 111 - Boxes

The (srfi 111) library defines boxes, a container for an object of any Scheme type, including another box. Boxes are normally used as minimal mutable storage, and can inject a controlled amount of mutability into an otherwise immutable data structure (or one that is conventionally treated as immutable).

See the SRFI document for more information.

box

(box value)

Constructor. Returns a newly allocated box initialized to value.

box?

(box? object)

Predicate. Returns #t if object is a box, and #f otherwise.

unbox

(unbox box)

Accessor. Returns the current value of box.

set-box!

(set-box! box value)

Mutator. Changes box to hold value.