I am trying to be progressive, using Data.List.NonEmpty and other list variants in my code base, but then I always have to sprinkle an extra toList in.
Unless there are reasons (like breaking type inference), I think all such list functions should be generalized to Foldable. (Even if type inference is broken for legacy users, such a generalization could maybe be pushed in a major-major version bump like 2.0...)
Update: I found a prior discussion on this, but maybe time is ripe for a revision:
I see that some functions, like
concatWith
work for anyFoldable
instead of just for list.Is there a reason why the other list functions are not generalized to
Foldable
? E.g.I am trying to be progressive, using
Data.List.NonEmpty
and other list variants in my code base, but then I always have to sprinkle an extratoList
in.Unless there are reasons (like breaking type inference), I think all such list functions should be generalized to
Foldable
. (Even if type inference is broken for legacy users, such a generalization could maybe be pushed in a major-major version bump like 2.0...)Update: I found a prior discussion on this, but maybe time is ripe for a revision: