We approached the problem anew, and fresh eyes quickly saw several areas for improvement that had nothing to do with the implementation language per se.
Other improvements came about because we were using a different language with its own idioms, strengths, and weaknesses that forced some new thinking.
We rewrote the C++ version to incorporate those improvements and to backport some of the new ideas from using Rust.
Writing solutions to the same problem in multiple languages has significant benefits, but of course, it is expensive and hard to justify in commercial settings. Perhaps we should repeat this
gf2 exercise in a third language someday!For the most part, the two versions are feature equivalent (a few things are not possible in Rust). They also have very similar performance characteristics, with neither being significantly faster than the other in most scenarios.
https://redd.it/1qjbxwl
@r_cpp