C Language History Debate
Discussions center on the historical origins, adoption, and dominance of C as a systems programming language, challenging myths that it was the first or only viable option by highlighting pre-existing alternatives like Pascal, Modula-2, Ada, and Unix's pivotal role in its spread.
Activity Over Time
Top Contributors
Keywords
Sample Comments
You just made me smile.I have done systems programming in Assembly, BASIC dialects, Pascal dialects, Modula-2, Ada, Oberon, without writing a single line of C.There was a time C was confined to UNIX System V at some university labs and the world at large had other sytems languages to choose from.Interest in C raised, because we wanted to have at home some kind of compiler for homework and while at the same time UNIX variants started to spread into the industry.I know kids these days,
What can I say. I am older than C and remember the days when it was used only as the UNIX system's language.UNIX's success made people want to port UNIX's tooling for their home computers, this lead to the spread of C implementations outside UNIX.Had UNIX been written in language XYZ, the article would be called "Learn XYZ". Merit is relative.
You're describing early Unix, with C as the one language to do everything. Some concepts like CI/CD and infrastructure as code didn't exist back in the late '70s and early '80s, but Unix and the Programmer's Work Bench constituted an ecosystem and it was almost all written in C, to support more C code.The modern descendants of Unix have more variety in their tooling, but the languages available still mostly sit on top of C libraries, with compilers and interprete
I disagree that C was looking for spotlight.C was the system programming language of Unix. Many people wanted Unix, so they started programming in C, because that was the best supported language. In the late 70s, byte code interpreted Pascal was also popular on Unix because it allowed for bigger programs on the then current 16-bit systems.It's pity that Modula-3 never got much traction. I guess that's part do to Modula's overly verbose syntax.C works as long as the platfo
Since almost all of the operating systems you listed were written in different languages, some specifically designed for a single hardware, the believe of your peers at the time, that C was the only way to write portable code at that time was pretty much correct. This was one of the design features of C. C is also a small, relatively easy to write a compiler for language. That is also a reason why so many mcu manufacturers included a C compiler with their products instead of a C++ compiler, eve
> C was a pretty good language in 1978. We didn't know a lot of things in 1978 that we do now in 2016. It now makes sense to revisit those decisions in light of nearly 40 years of practice.We surely did know that Burroughs was selling an operating system written in ESPOL, later NEWP in 1961. Nowadays Unisys still sells them as MCP.We did know that the Flex machine was written in ALGOL 68RS in 1980.We did know that VME was written in S3 in 1970.We did know that Pilot was writt
Developers make contradictory productivity claims all the time. You see it with LLMs, strongly vs weakly typed languages, GC vs non-GC, React Native vs Kotin / Swift, JIT languages vs AOT languages, and so on and so forth.Back in the 80s and 90s the bigger concern was portability and cost of the compiler license, both of which C did better.C was closer to the metal than vanilla Pascal too. But commercial Pascal dialects supported pointers, inlined assembly, and everything else you nee
I am old enough to remember when C only had backing from people working on UNIX systems, while other systems were either using Assembly or another high level language e.g. PL/I, Algol or Pascal dialect.
It is not true.Before C escaped UNIX there were other systems programming languages available.
" Specifically, you said that C was initially so bad that they couldn't even write Unix in it. That statement is historically false "Well, if you watched the Vimeo video, he looks at early references and compares side-by-side C with its ancestors. A lot of early C is about the same as BCPL & its squeezed version B. The first paper acted like they created C philosophy and design out of thin air based on B w/ no mention of BCPL. Already linked to it in another comment. F