Previous: Weak key hashes, Up: Weak References


29.2.2 Weak vectors

Weak vectors are mainly useful in Guile's implementation of weak hash tables.

— Scheme Procedure: make-weak-vector k [fill]
— C Function: scm_make_weak_vector (k, fill) |1 |1 |0

Return a weak vector with k elements, each the empty list. Optional argument fill specifies a value to use instead of the empty list.

— Scheme Procedure: weak-vector [l ...]
— Scheme Procedure: list->weak-vector [l ...]
— C Function: scm_weak_vector (l) |0 |0 |1

Construct a weak vector from a list: weak-vector uses the list of its arguments while list->weak-vector uses its only argument l (a list) to construct a weak vector the same way vector->list would.

— Scheme Procedure: weak-vector? obj
— C Function: scm_weak_vector_p (obj)

Return #t iff obj is a weak vector. Note that all weak hashes are also weak vectors.