filterv docstring prohibits using pred with side effects

Description

The docstring of filterv prohibits using a filter predicate that has side effects:

Returns a vector of the items in coll for which (pred item) returns logical true. pred must be free of side-effects.

The last statement seems unmotivated. filterv is based on reduce, and therefore eager like into or mapv. There is no obvious reason to forbid ('must'!) side effects in the predicate.

This docstring has caused confusion in the past. Examples:

The docstring was originally copied verbatim from lazy filter (CLJ-847, commit ec59eba), which could explain why the sentence is there in the first place.

Solution

Delete the sentence 'pred must be free of side-effects.' in the docstring.

Environment

None

Assignee

Unassigned

Reporter

David Bürgin

Labels

Approval

Triaged

Patch

None

Affects versions

Priority

Minor