Vocabulary | Summary |
arrays | Fixed-size arrays |
assocs | Associative structure protocol |
byte-arrays | Efficient fixed-length byte arrays |
byte-vectors | Growable byte arrays |
graphs | Directed graphs |
growable | Low-level implementation of vectors and string buffers |
hash-sets | Set structure with constant-time addition and removal |
hashtables | Associative structure with expected constant time lookup |
hashtables.identity | Hashtables keyed by object identity (eq?) rather than by logical value (=) |
hashtables.wrapped | Wrapped hashtables for providing alternate key equivalence |
make | Sequence construction utility |
namespaces | Dynamically-scoped variables |
quotations | Code quotations, essentially executable fixed-size arrays |
sbufs | Growable string buffers |
sequences | Sequence protocol, combinators and utilities |
sets | Set-theoretic operations on sequences |
sorting | Merge sort for sequences |
splitting | Splitting sequences and grouping sequence elements |
strings | Fixed-size character arrays |
vectors | Growable arrays |
Vocabulary | Summary |
biassocs | Bidirectional assocs |
binary-search | Fast searching of sorted arrays |
bit-arrays | Fixed-size bit arrays |
bit-sets | Efficient bitwise operations on bit arrays |
bit-vectors | Growable bit arrays |
bloom-filters | Bloom filters |
boxes | An abstraction for enforcing a mutual-exclusion invariant |
cache | An associative mapping whose entries expire after a while |
circular | Virtual sequence presenting a rotation of an underlying sequence |
columns | Virtual sequence view of a matrix column |
cuckoo-filters | Cuckoo filters |
deques | Double-ended queue protocol and common operations |
disjoint-sets | An efficient implementation of the disjoint-set data structure |
dlists | Double-linked lists/deques |
grouping | Grouping sequence elements into subsequences |
hash-sets.identity | |
hash-sets.numbers | |
hash-sets.sequences | |
hash-sets.wrapped | |
hashtables.numbers | |
hashtables.sequences | |
heaps | Maxheap and minheap implementations of priority queues |
interval-maps | Interval maps for disjoint closed ranges |
interval-sets | |
linked-assocs | Assocs that yield items in insertion order |
linked-sets | Sets that yield items in insertion order |
lists | Implementation of lisp-style linked lists |
lists.lazy | Lazy lists |
mirrors | View any object as an association mapping slots to values |
named-tuples | Use tuples like both sequences and assocs |
nibble-arrays | Space-efficient arrays of 4-bit values |
nmake | Generalization of make for constructing several sequences simultaneously |
persistent.assocs | Persistent associative mapping protocol |
persistent.deques | Persistent amortized O(1) deques |
persistent.hashtables | Persistent hashtables with O(1) insertion, removal and lookup |
persistent.heaps | Datastructure for functional peristent heaps, from ML for the Working Programmer |
persistent.sequences | Persistent sequence protocol |
persistent.vectors | Immutable vectors with O(log_32 n) random access, push, and pop |
search-deques | Double-ended queues with sub-linear membership testing |
sequences.cords | Virtual sequence concatenation |
sequences.deep | Sequence/tree combinators like deep-map, deep-each, etc |
sequences.merged | A virtual sequence which merges (interleaves) other sequences. |
sequences.padded | Virtual "padded" sequences |
sequences.product | Cartesian products of sequences |
sequences.unrolled | Unrolled fixed-length sequence iteration |
sequences.windowed | |
sorting.human | Correct sorting of sequences of strings with embedded numbers |
sorting.insertion | Insertion sort |
specialized-arrays | Arrays of unboxed primitive C types |
specialized-vectors | Vectors of unboxed primitive C types |
suffix-arrays | Suffix arrays |
tuple-arrays | Efficient arrays of tuples with value semantics for elements |
unrolled-lists | Deque implementation with constant-time insertion and removal at either end, and better space efficiency than a double-linked list |
xml.data | Contains XML data types and basic tools for manipulation |
Vocabulary | Summary |
arrays.shaped | |
assocs.extras | |
containers | |
cursors | |
digraphs | Simple directed graph implementation for topological sorting |
gap-buffer | Gap buffer data structure |
lists.circular | Circular sequences as infinite linked lists |
lru-cache | Least Recently Used (LRU) cache |
math.primes.lists | Infinite stream of prime numbers through lazy lists |
pairs | Assoc implementation optimized for a single key/value pair |
quadtrees | Quadtree spatial indices |
sequences.abbrev | |
sequences.frozen | Virtual "frozen" sequences |
sequences.inserters | Direct the output of map-as, filter-as, etc. combinators into existing growable sequences |
sequences.interleaved | Interleaved sequences |
sequences.modified | |
sequences.prefixed | |
sequences.repeating | |
sequences.rotated | Rotated virtual sequences |
sequences.shifted | Shifted virtual sequences |
sequences.snipped | Snipped virtual sequences |
sequences.squish | Sequence flattening with parameterized descent predicate |
sequences.suffixed | |
sequences.zipped | Virtual "zip" sequences |
sets.extras | |
sorting.bubble | Bubblesort |
sorting.heap | Heapsort |
sorting.quick | Quicksort |
trees | Binary search trees |
trees.avl | Balanced AVL trees |
trees.splay | Splay trees |