In article , Jerry Avins writes: |> |> Pointers being opaque is a property of a language. I think we are |> discussing the properties of future machines here.
Not on a capability machine!
|> Regardless of what |> the programmer sees, pointers must be incremented, decremented, and |> indexed relative to. Do you expect the arithmetic that will that to be |> binary or decimal? Will memory addresses be binary?
Eh? All of those properties are independent of the representation, so much so that they are equivalent even if the representation doesn't use a base! The binary/decimal issue is TOTALLY irrelevant to them.
|> I used a mainframe that did floating point in decimal (Spectra 70?). |> When a switch was made to a machine that did floating point in binary, |> an important program stopped working. Rather than take any chances with |> future chances, the program (including all the trig and arbitrary |> scaling) was rewritten in integer.
Without making any attempt to find out why it stopped working? Aw, gee. Look, I was writing, using and porting top-quality numerical software that was expected to work, source unchanged, on floating-point of any base from 2 to 256 (decimal included) since about 1970. It isn't hard to do - IF you know what you are doing.
Only a minority of the failures, then or later, with porting numerical codes are due to the base as such. It really ISN'T a big deal.
|> The assumption was that integer |> arithmetic would remain binary. Is that still a good assumption?
Yes.
Regards, Nick Maclaren.