You can sometimes deal with performance issues by caching, if you want to trade one hard problem for another (cache invalidation). There’s plenty of cases where that’s not a solution though. I recently had a 1ns time budget on a change. That kind of optimization is fun/impossible to do in Python and straightforward to accomplish Rust or C/C++ once you’ve set up your measurements.
Which is exactly what I said. Most of the times you can work around it. Sure cache invalidation can be hard, but doesn’t have to be. If you need performance use more performant language. Right tool for the job.
You can sometimes deal with performance issues by caching, if you want to trade one hard problem for another (cache invalidation). There’s plenty of cases where that’s not a solution though. I recently had a 1ns time budget on a change. That kind of optimization is fun/impossible to do in Python and straightforward to accomplish Rust or C/C++ once you’ve set up your measurements.
Which is exactly what I said. Most of the times you can work around it. Sure cache invalidation can be hard, but doesn’t have to be. If you need performance use more performant language. Right tool for the job.