SRFI 196: Range objects

This is the sample implementation of SRFI 196, which provides range objects for Scheme. It should be portable to any R7RS-small implementation with SRFI 128 (R7RS-large's (scheme comparator)). SRFI 145 and SRFI 78 (for tests) are optional dependencies; bare-bones implementations are provided.


From the SRFI document:

Ranges are immutable collections that can be enumerated but are represented algorithmically rather than by a per-element data structure. This SRFI defines a large subset of the sequence operations defined on lists, vectors, and other collections. If necessary, ranges can be converted to a list of its elements or a generator that will lazily produce each element in the range.


Wolfgang Corcoran-Mathe wcm@sigwinch.xyz


This is free software (MIT/X license). See LICENSE for details.