Java SE Language Changes
A Z
poweruserm at live.com.au
Wed Mar 7 03:46:02 UTC 2018
from Zachary Mitchell ...
'But you seem to be alone on that score.'
-People have in fact just quit on this with one language
in time. That doesn't mean that valid points
don't continue to exist, and mending changes shouldn't happen.
I am in fact quite far from alone.
'Basic Java arithmetic won't change.'
-I have been told this from Oracle on supposedly technical grounds.
However, because there is no way to know when a double or float
arithmetic will do this beforehand, and no longer the same direct route
to calculate the value, in fact in this region things MUST be changed,
and the technical objections are only limited.
There can even remain both modes of float and double arithmetic.
Just an extra keyword to enforce accuracy arithmetic when requested.
Double a = 0.1;
Double b = 0.1;
Double x = a*b;
out.println(x == 0.01) //true
'Back in 1998 the aim was to make Java as appealing as possible
to as many kinds of developers as possible so that it would be a
success. But the numerics work went nowhere and Java was a success
without it...'
My polite contention here is that Java is a curtailed or a limited success without
certain innate changes, which are real object oversights, ever since Java 1.1.
Java 1.2 changed to floating point arithmetic approximation,
but did not include a default accuracy mode or an accuracy keyword.
Is there any route forward with these changes?
JDK-8190947
JDK-8197995
JDK-8190991
More information about the core-libs-dev
mailing list