This is a simple collection of list-processing functions which I have found helpful in general. Note that it should not be considered as stable.
Finds the index of the first element in lst such that proc returns a non-false result.
Splits a list lst into sublists such that all elements in a sublist have the same result for proc (based on equal?).
Computes all possible splits of lst on a supplied predicate pred.
Returns a list of all nonempty subsequences of lst.
Replaces the first occurrence of the sublist sublst/i in lst with sublst/o.
Produces a mapping from every unique element in lst to its (absolute) frequency in lst.
Links the n-th element in lst to index n, where n starts at 0.
Inserts val at position pos of lst, shifting the element that originally occupied pos (if any) one position to the right.