next up previous
Next: A few plausible general Up: Why bother? Previous: Why bother?

On Principle

It is wrong on principle to deny the programmer in a higher-level language access to ANY computational facility built in to the hardware. Not only are floating-point concepts cut out by some languages, nearly all omit some other useful items like the 32x32 full 64 bit integer multiply (or 64x64 to 128 bit where available). If we don't make a fuss now, the argument might even come around to ``why not leave it out of the hardware; it is impossible to access from software?''

Since it is widely regarded as perverse and counterproductive to require programmers to write in assembly language, language designers who (in effect) forbid the use of available features must have had something in mind.

Or did they? It appears if they thought about it at all, what they had in mind was that those features were useless.

Or useful only to numerical experts who somehow would not mind writing in assembly language(!?) Or violated portability constraints (more tomorrow about this).

Or that the language designer could make the best choice for all users.

Or that the language designer should leave these issues as platform-dependent or implementation-dependent thereby promoting chaos, the ultimate goal of computer scientists.



Richard J. Fateman
Wed Aug 12 22:44:29 PDT 1998