7.6.2.5 rnrs lists

The (rnrs lists (6)) library provides procedures additional procedures for working with lists.

Scheme Procedure: find proc list

This procedure is identical to the one defined in Guile’s SRFI-1 implementation. See Searching, for documentation.

Scheme Procedure: for-all proc list1 list2 ...
Scheme Procedure: exists proc list1 list2 ...

The for-all procedure is identical to the every procedure defined by SRFI-1; the exists procedure is identical to SRFI-1’s any. See Searching, for documentation.

Scheme Procedure: filter proc list
Scheme Procedure: partition proc list

These procedures are identical to the ones provided by SRFI-1. See List Modification, for a description of filter; See Filtering and Partitioning, for partition.

Scheme Procedure: fold-right combine nil list1 list2 …

This procedure is identical the fold-right procedure provided by SRFI-1. See Fold, Unfold & Map, for documentation.

Scheme Procedure: fold-left combine nil list1 list2 …

This procedure is like fold from SRFI-1, but combine is called with the seed as the first argument. See Fold, Unfold & Map, for documentation.

Scheme Procedure: remp proc list
Scheme Procedure: remove obj list
Scheme Procedure: remv obj list
Scheme Procedure: remq obj list

remove, remv, and remq are identical to the delete, delv, and delq procedures provided by Guile’s core library, (see List Modification). remp is identical to the alternate remove procedure provided by SRFI-1; See Deleting.

Scheme Procedure: memp proc list
Scheme Procedure: member obj list
Scheme Procedure: memv obj list
Scheme Procedure: memq obj list

member, memv, and memq are identical to the procedures provided by Guile’s core library; See List Searching, for their documentation. memp uses the specified predicate function proc to test elements of the list list—it behaves similarly to find, except that it returns the first sublist of list whose car satisfies proc.

Scheme Procedure: assp proc alist
Scheme Procedure: assoc obj alist
Scheme Procedure: assv obj alist
Scheme Procedure: assq obj alist

assoc, assv, and assq are identical to the procedures provided by Guile’s core library; See Alist Key Equality, for their documentation. assp uses the specified predicate function proc to test keys in the association list alist.

Scheme Procedure: cons* obj1 ... obj
Scheme Procedure: cons* obj

This procedure is identical to the one exported by Guile’s core library. See List Constructors, for documentation.