Add scanLeft
/scanLeftTail
to all non-empty collections
#4595
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I was quite surprised to find that there were no
scanLeft
on any of the non-empty collections. Furthermore, the tail of a scan on a non-empty collection is itself non-empty, which might be a useful property to expose. The namescanLeftTail
was the best I could come up with for now and it's of course open to bike-shedding.Putting out this PR as a draft to get some input on it. Will add tests and documentation if you all consider it useful!
The others (
NonEmptyChain
, etc.) don't have thescanLeftNel
syntax and requires more work to get the same result.Finally, the implementations in this draft are a bit mixed. Don't worry about that for now. Again, I'm mostly checking if people would find this useful or not.