[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: 6502 illegal opcodes questions
mdj wrote:
Michael J. Mahon wrote:
It's probably a combination of obstinacy and caution. On todays
hardware, you can do some pretty amazing numerics on GPU's rather than
CPU's, which have orders of magnitude more computational power than
CPU's with regards to numerical calculations. Getting it *right* for
numerics is hard, and given the rate of change in the hardware arena
thus far, it may prove to be more sensible to have left it until the
dust settles a little.
Whoops--cop out. There is essentially universal agreement on IEEE
FP, with the only holdouts being...LANGUAGE DESIGNERS! It's at least
a decade past time to get with the program!
Here's the changes that actually were made to the Language
Specification for version 1.2.
http://java.sun.com/docs/books/jls/strictfp-changes.pdf
In essence, these changes relax the rules on floating point arithmetic
for intermediate calculations, meaning you can take advantage of the
peculiarities of particular fp engine implementations (the Intel 80 bit
implementation being the primary example cited) at the cost of
non-reproducability of results across Java implementations, which
nobody seems to care about.
There's a strictfp keyword that exists to enforce the original
reproducable semantics for cases where it's required, which it would
seem, is almost never, I've not seen any code actually use it.
I expect that strictfp will become the most commonly unimplemented
modifier in the language. ;-)
I note, however, that in violation of the spirit of the IEEE FP
standard, the exception traps were not added--thus preventing the
skilled use of the traps to obtain better numeric results, or their
unskilled use to detect anomalies.
This edition of the platform was released in 1999, so it seems the
major issue went away with those changes.
That's probably why I missed it...starting in 1998, I had other fish
to fry.
What remains to be done is an extension to handle richer numerics, like
complex numbers.
Ah, yes--and simple (non-precedence changing) operator overloading.
-michael
Parallel computing for 8-bit Apple II's!
Home page: http://members.aol.com/MJMahon/
"The wastebasket is our most important design
tool--and it is seriously underused."