Problem with TURBO C and pointers

Doug Gwyn gwyn at smoke.brl.mil
Fri Jan 11 03:01:28 AEST 1991


In article <1991Jan10.032831.28872 at athena.mit.edu> scs at adam.mit.edu writes:
>I have always found it astonishing that the 80*86's benighted
>segmented architecture, and the astounding kludges required to
>implement a language like C on it, are actually compatible with
>the original definition of C, not to mention the ANSI standard.
>That is, the requirement that malloc be declared correctly, and
>the potential for disaster if it is not, has been specified from
>the beginning, even though the machines on which C was defined
>and first implemented were much more forgiving.  (This good fit
>between C and even fairly ugly architectures is a tribute to
>Dennis Ritchie's foresight and wisdom, although I hate to refer
>to dmr and the 80*86 in the same sentence.)

I think it is also a tribute to the power of thinking in abstractions
rather than concretes.  Given a choice between designing a systems
implementation language specifically for the PDP-11 and designing one
that, while a good match for the PDP-11, was more generally useful,
Dennis clearly made the right choice.  (Even so, some ideas about the
language had to evolve over the years as unanticipated portability
issues surfaced.  The current official interpretation of the null
pointer constant is one such (compatible) revision of the original
intention.)



More information about the Comp.lang.c mailing list