Introduction
Introduction Statistics Contact Development Disclaimer Help
----------------------------------------
What Is C?
March 28th, 2020
----------------------------------------
What is C?
It's 1969, how are you programming? A lot of businesses are
using COBOL to process payroll and accounting data. A lot of
number crunchers are using FORTRAN for engineering compuations.
But a lot of folks are still programming in assembly language.
Especially if they are writing operating systems. This is
not meant to be an authoritative definition or history of C.
There are plenty of good sources for each. I just want to
give you a sense of the what their world must have been like.
On a computer like the PDP-7 had the equivalent of about 128k
of RAM and cost around 500,000 dollars in today's dollars.
Programmers were as likely to code in assembly language as they
were to run a high level language compiler. It was on the PDP-7
that Unix was first developed by Thompson and Ritchie, in 1969.
It was much less capable than a mainframe that might have had
up to 4 megabytes of memory, but it was decidedly less
expensive and therefore accessible to small teams of users.
But there was a problem with the first version of Unix. When
it came time to port Unix to other systems like the more capable
PDP-11, it required a rewrite. When DEC came out with a new
computer, it didn't just make a slightly faster version of the
previous model. Instead, companies often came out with a whole
new architecture. Meaning the CPU and the instructions were
different from model to model.
Becuase the new processor had a different set of instructions,
assembly language programs had to be re-written. We no longer
have this problem. When Dell comes out with a new server,
it's the same architecture but slightly faster. A high level
language would allow the software to be ported to a new
architecture without costly re-writes to assembly language
routines.
Ritchie and Kernighan created C mostly to make porting Unix a
simpler process. The parts of Unix that require asembly
language are very small with the bulk of Unix written in C.
Even if you came up with a completely different instruction set
from anything that came before, it would be posible to write a
C compiler for that processor and port Unix to it. With only
some small bits here and there that specific to a computer
architecture and processor.
Maybe that's why C has been so successful. It was built to solve
a very real problem, in a world where computing resources were
expensive and limited. It wasn't designed by committee of as an
academic exercise. And the folks that did create it were
incredibly talented and intelligent individuals.
____________________________________________________________________________
Gophered by Gophernicus/3.0.1 on Ubuntu/22.04 x86_64
You are viewing proxied material from tilde.team. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.