D mentioned on Rust discussions site
Paulo Pinto
pjmlp at progtools.org
Sat May 23 21:33:11 UTC 2020
On Saturday, 23 May 2020 at 20:11:17 UTC, Dibyendu Majumdar wrote:
> On Saturday, 23 May 2020 at 17:08:10 UTC, Andrei Alexandrescu
> wrote:
>> On 5/23/20 9:18 AM, Dibyendu Majumdar wrote:
>>> On Saturday, 23 May 2020 at 02:37:23 UTC, Walter Bright wrote:
>>>> C missed some obviously great ideas. One is nested
>>>> functions, which fit right in with C's semantics. The other
>>>> is the fix for:
>>>>
>>>> https://www.digitalmars.com/articles/C-biggest-mistake.html
>>>
>>> I do not think it was a mistake at all. Treating pointers and
>>> arrays uniformly is one of the great innovations in C.
>>>
>>
>> There's no doubt in my mind that the absence of a universal
>> "doped pointer" (pointer plus extent) built-in or standard
>> library in C has caused innumerable problems. The fact that
>> early C versions could not return structs by value might have
>> contributed to that decision.
>
> A doped pointer or hidden length would not be in the spirit of
> C.
>
> I would agree that the standard library could have been better
> designed but that is a different problem.
>
> C was designed as a replacement for assembly - not another high
> level language. Of course C is unsafe for general purpose
> programming - it wasn't designed for that. C treats memory as a
> blob to be manipulated - types are there to help you do that
> more easily but that is all they do.
BCPL as C's percusor (given B) was never intended to be a general
purpose systems programming language, rather as its name implies,
for Bootstraing CPL.
As many things in computing it just got misused beyond its
original purpose.
C designers had 10 years of high level systems programming
languages, going back to ESPOL and NEWP at Burroughs, followed by
PL/I, the PL/S and PL.8 at IBM, and BLISS at VAX, to get
themselves inspired, assuming access to the respective papers or
publications, which a place like Bells Labs certainly would
provide in some form.
More information about the Digitalmars-d
mailing list