The compiler moves down and converts the 'code' into all those stages until finally binary is the result. Some compilers use an internal intermediate but not all. This should not be confused with JAVA/.Net because this intermediate code is not stored/executed.
Most compilers are written using normal mid level languages. Currently 'C' is the most popular platform for this job. This is the case because C can operate as both a high and low level language thus giving the developer a lot of power.
I'd only add that I'm quite sure that C++ is more popular than C for compilers. I wouldn't go so far as to say there's a clear majority--there are far more programming languages and compilers in the world than most engineers experience regularly. There
are only a few generally available general purpose PL's, but many more used for specialized types of programming. There was a time that large machines came with their own custom PL's in fact (think telephone switches, factory automation equipment, etc).
Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation, please create a new thread in our Forums, or Contact Us and let us know.