Out of my head, I am not aware that we try to mutate immutables, systematically.
For the next release I shall add a test run w/ the OpenJDK 26 of course, good call.
JogAmp uses 'static final' fields with same objectives, i.e. allowing the compiler
to modify and optimize code (similar to virtual interface functions),
removing lookups and branches.
In the jaamsim context, Java 25 was actually a very significant upgrade. so much so that we're likely to begin shipping a multi-release jar so we can take advantage of virtual threads and scoped values which is much much faster and way more scalable than the previous approach we were using to capture thread contexts in the event execution code.