This site is a static rendering of the Trac instance that was used by R7RS-WG1 for its work on R7RS-small (PDF), which was ratified in 2013. For more information, see Home. For a version of this page that may be more recent, see RedDocket in WG2's repo for R7RS-large.

Red­Docket

cowan
2014-12-08 12:45:16
4history
source

This is a draft of proposals for the Red Edition (data structures) of R7RS-large. For other dockets, see WG2Dockets.

Proposed

List library: SRFI 1.

String library: SRFI 13 or StringSlicesCowan.

Vector library: SRFI 43 or VectorsCowan.

Sorting and merging: SortingShivers (edited draft of withdrawn SRFI 32) or SRFI 95 or R6RS.

Comparators: SRFI 114.

Boxes: SRFI 111.

Sets and bags: SRFI 113.

Integer sets: IntegerSetsCowan.

Character sets: SRFI 14.

List queues: SRFI 117.

Immutable deques, sets, and maps: ImmutableDataStructuresWortman.

Immutable pairs and lists: SRFI 116.

Random access pairs and lists: SRFI 115.

Hash tables and bimaps: HashTablesCowan.

Generators and/or streams: GeneratorsGauche and/or SRFI 41.

Lazy sequences: LazySequencesCowan.

Immutable cyclic lists: CyclesMedernach.

Binary heaps: BinaryHeapsCowan.

Enumerations with sets and maps: EnumsCowan

Extended records: http://srfi.schemers.org/srfi-99/srfi-99.html.

Regular expressions: SRFI 115.

Suggested

Multidimensional general arrays: ArraysCowan.

Sparse vectors and maps: Gauche util.sparse.

Ternary search trees: No API proposal yet, but see Wikipedia.

Ephemerons: MIT Scheme or Racket (optional package).

Gap buffers: BuffersCowan (based on Emacs Lisp)