Live data from Hacker News

The Development of the C Language (1993)

bell-labs.com

1–10 of 536 posts

Re: The Development of the C Language (1993)

#2
i had read this before, and it has been posted here multiple times, but somehow i had missed:

> Thus the core C language escaped nearly unscathed from the standardization process, and the Standard emerged more as a better, careful codification than a new invention.

which made me grin.

Re: The Development of the C Language (1993)

#6
People who still write C, honest question: Why?

C is full of quirks. From cryptic "undefined behaviors" to a type system that isn't really a type system (more like "size hints for the compiler"), the language doesn't feel easy to use/debug. Add to this CPP macros, a universally recognized bad idea, a clunky import system, and lack of a single reference implementation of the compiler/libC, and you have a language that is harsh to defend.

Also, documentation is all over the place. If a function isn't described in `man`, I have no idea where else to actually look for it.

I used to think "C presents the most honest representation of the low-level mechanisms of the computer", but... even this is shaky. I've been programming for almost 15 years now, and I don't think I've ever seen a computer where memory is actually a continuous array of bits sorted by memory address. The C representation of memory (and all the pointer arithmetic) is not a real representation of your hardware, and this too is an abstraction.

So, setting aside the need to maintain 30+ year old code, what would be modern reasons to start a new project in C?

Re: The Development of the C Language (1993)

#8
post #5

I wonder how much the pile of undefined behavior contributed to C's success. I can imagine that vendors picked C over alternatives due to C giving them more freedom with their implementation.

Isn't the other way around? Vendors already had picked C and they wanted to claim compliance to the then brand new C89 standard so anything they didn't want to give up on was deemed "implementation-defined behavior" and anything they couldn't give up on[0] was deemed "undefined behavior".

[0] because their machines worked very differently from the others' machines

Re: The Development of the C Language (1993)

#9
post #4
post #3

This might miss a (1993) tag. Interestingly, some might print the same title about JavaScript.

So the conclusion is, Rust will never be a success because everyone loves it ?

When I get to achieve my target 3 times faster using Go why should I waste my time following “functional ways” just to use to write project A

Re: The Development of the C Language (1993)

#10
Original title: The Development of the C Language

Editorialized title: “C is quirky, flawed, and an enormous success” – Dennis Ritchie

HN Guideline:

> [...] please use the original title, unless it is misleading or linkbait; don't editorialize.

Post reply on HN