morelinq / MoreLINQ

Extensions to LINQ to Objects
https://morelinq.github.io/
Apache License 2.0
3.63k stars 409 forks source link

Async versions of OrderedMerge and GroupAdjacent #1060

Closed danielearwicker closed 4 months ago

danielearwicker commented 4 months ago

I really like the GroupAdjacent and OrderedMerge, as in combination they can do an ordered full join on sequences that have already been sorted by the same key, powerful for processing/updating/comparing large sorted data sets.

Great to see an async version of Merge - any interest in async versions of GroupAdjacent and OrderedMerge?

viceroypenguin commented 4 months ago

@danielearwicker, these operators exist in SuperLinq.Async, as ConcurrentMerge, GroupAdjacent, FullOuterJoin, and SortedMerge. SuperLinq.Async also has most of the other operators in async version as well.

atifaziz commented 4 months ago

@danielearwicker OrderedMerge is implemented & maintained by @i3arnon as part of MoreAsyncLINQ. Unfortunately, looks like GroupAdjacent has been added yet (perhaps you may want to contribute there?). You could use SuperLinq that offers both, but that's a complete separate fork.

danielearwicker commented 4 months ago

Cool, thanks for the pointers