Re: I need a new compiler...



docdwarf@xxxxxxxxx wrote:

It may well be that the ISO or IEEE or ANSI or whatever standard does not
require a version of C to have access to lower levels of memory... but if
all versions have capabilities for such access, and many advantages are
taken in many versions of such access... well, something about walking and
quacking like a duck comes to mind.

Since this empirical test is trivially shown to fail, it's a moot point.

Many C implementations execute in a process-virtual environment, so at
best they can only provide access to process virtual memory. Maybe
that's "low-level" to some, but there are a great many turtles below it.

There are C implementations where pointers are not machine addresses
at all, notably the various implementations for the AS/400. On those
machines, C pointers were 128-bit tokens that identified objects in
the single-level store, but they did not contain machine addresses,
which were 64- or 65-bit (for the CISC- and RISC-architecture machines
respectively).

When C99 was first approved, Peter Seebach claimed to be the only
conforming implementation. He spoke in jest, of course, but he had a
copy of the standard and fit the definition. And while it's hard to
prove this definitively, I suspect most phenomenologists would tell
you that few of us have low-level access to our own memories.

--
Michael Wojcik
Micro Focus
Rhetoric & Writing, Michigan State University
.



Relevant Pages

  • Re: What are the domains that lisp doesnt fit int?
    ... the standard only says what ... happens for pointers that are within an object (or one past its ... In Common Lisp there is no such definition for accessing memory addresses. ... implementations. ...
    (comp.lang.lisp)
  • Re: What are the domains that lisp doesnt fit int?
    ... the standard only says what ... happens for pointers that are within an object (or one past its ... Of course, some implementations may provide functions for it, but chances ...
    (comp.lang.lisp)
  • Re: What is the advantage of C?
    ... shorten the standard significantly. ... Don't bother specifying how null pointers are ... to allow strange systems to be standard. ... non-conforming implementations change to match it. ...
    (comp.lang.c)
  • Re: Ideal computer language from scratch?
    ... You need to understand that many earlier implementations lacked ... implementations predate the standard (IIRC the standard was released in ... The reason why pointers are so easy to use in assembly, ... assembly programmers, bound checking is second nature ...
    (alt.lang.asm)
  • Re: Requesting advice how to clean up C code for validating string represents integer
    ... Linkname: c standard - clc-wiki ... with a signed zero (including all IEC 60559 implementations) ... that follow the specification of annex G, the sign of zero ... between brake pedal and brake pads being through a complicated ...
    (comp.lang.c)