3 ms·
Finance and video games both have really stubborn engineering traditions. > https://openjdk.org/jeps/442 https://openjdk.org/jeps/442 This succinctly is the a
by doctorpangloss 3y ago
Finance and video games both have really stubborn engineering traditions.
> https://openjdk.org/jeps/442 https://openjdk.org/jeps/442
This succinctly is the answer.
> not every `new Foo` actually results in a heap allocation, and can be optimised to work directly in registers.
While I know in my heart of hearts that you are right, this category of advice has so many caveats. It's like when Graal markets itself as a potential substitute for NodeJs, where its performance is abjectly terrible.
I have never personally succeeded in convincing anyone with these deep programming traditions to try something new that may be Better in Every Way. It always has to be this long, trickle down journey of adoption. People still talk about John Carmack and video game engineering, decades after any of his innovations have been verbatim relevant and decades after an individual could possibly have a hope and prayer of authoring a first person shooter with an audience from scratch. But see, I need to know a lot of stuff to understand that.
- latchkey 3y ago> I have never personally succeeded in convincing anyone with these deep programming traditions to try something new that may be Better in Every Way. This is true of almost anything really, not just programming.
- mhss 3y agoAgreed. It's culture, and culture is very hard and slow to change.
- vips7L 3y agoYeah scalar replacement is very conservative and things that a human can easily tell don’t escape the jit cannot. This is 2ish years old but has a lot of detail on what escape analysis can and cannot see: https://gist.github.com/JohnTortugo/c2607821202634a6509ec3c321ebf370 https://gist.github.com/JohnTortugo/c2607821202634a6509ec3c3...