-
Notifications
You must be signed in to change notification settings - Fork 74
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comparison with Swift's CollectionDifference (SE-0240) #52
Comments
In short, I'd expect once it's released that with a couple of extension methods, |
The |
That's super exciting, and I'm looking forward to using it in production - thanks for your work on the proposal and implementation, Scott! |
It has been my pleasure; thanks to you for being the tip of the spear! |
I was interested in this as well and ran a couple of benchmarks from https://github.com/tonyarnold/DiffPerformanceSuite -- Differ is too slow for
IMHO this package is a good choice when you don't compare strings and want to support older OS's 👍 |
Thanks for the thorough pass at the benchmarks, and for updating them, Christian! I wonder what it is about Differ's handling of |
Oh, right - Differ is assuming that |
Might be because the lib predates It also doesn't help that the algorithm uses Shlemiel the painter's algorithm: Glancing over the implementation, it should be possible to cache previous array indexes and advance from there, instead of computing the index from I was also considering to add a |
Christian, if you have the time and inclination to improve the performance of string diffing I would be mighty appreciative. I'm not actively using Differ in many places right now, so I can't justify fixing it until I find some mythical "free time" ❤️ |
How does this compare with the Swift development proposal that plans to add Ordered Collection Diffing? Are you involved with that project in any way?
https://github.com/apple/swift-evolution/blob/master/proposals/0240-ordered-collection-diffing.md
The text was updated successfully, but these errors were encountered: