How are languages created

kep55

Distinguished
Dec 31, 2007
301
11
18,945
Two questions I've never received a good answer on.

First, when a new chip is designed, be it CPU, GPU, or whatever, how is it first coded? How did Intel know how to code the 4004, the 8008, etc.? One can't just throw a bunch of silicon & copper on a chunk of plastic and expect it to do anything.

Second, how are programming languages created? I can understand C# coming out of C++ out of C+ out of C. But how did the originator of Unix know what to write to get it to work on pretty much any cpu? Same for PERL, Ada, Fortran, Ruby on Rails, etc. Or going way back, how did Admiral Hopper know how to program her ballistics computers?

It all sounds like it goes back to the old question, "Which came first? The chicken or the egg?"
 
Well, the designers - of the chip or the programming language - decide what they want it to do, and then they design the chip, or write the language, accordingly. It's as simple as that (although just a little more difficult in practice).

No chickens or eggs were hurt in the making of this post.
 
So.. Nvida wanted to melt the ice cap when they designed FEMI, Stallman wanted to investigate what was held in other sections of memory with C and Larry Wall wanted 'Fscking computers' to be a regular expression when he conceived Perl?? 😉
 
I really don't understand what you're asking. There is no preset chip design for the language to work with. The instruction set is designed, then the chip is built to implement that instruction set. As with locks and keys, you design them together, not in isolation from each other.
 
A programming language is (mostly) platform independant; that means you do not create a language for a specific chip. It's the compiler's job to translate higher level programming language into the chip's specific set of instructions.
 
Go to the security now page on the twit.tv podcast network. Listen to episode 223, "Lets Design a Computer". This is the first in a series of upcoming podcasts in which Steve Gibson should answer your question.