3 ms·
In the early days of microcomputers the competition was between basic and pascal. Basic was interpreted because decent compilers on that hardware were difficult
by GoblinSlayer 5y ago
In the early days of microcomputers the competition was between basic and pascal. Basic was interpreted because decent compilers on that hardware were difficult to achieve, but it was achieved for pascal anyway, so it won. C somehow came later.
- hnlmorg 5y agoSorry but you're largely wrong on all counts there. 1. There was a lot more around than just BASIC and Pascal, 2. Pascal wasn't born much before C (roughly a couple of years), 3. and BASIC compilers did exist even as early as in the 60s. Some examples of other languages (all of which pre-date Pascal and C): Pascal itself was inspired from ALGOL. So there's a whole class of languages you're excluding. ALGOL was typically compiled too. Also compiled was FORTRAN. In fact the first FORTRAN compiler was written in the 1957 and the language is credited as being the first ever high level programming language. Even BASIC wasn't one of a kind. There were a few languages similar (the names of which escape me at this point in time). But BASIC was definitely the most popular of it's ilk. And lets not forget LISP. It's the second oldest high level language after FORTRAN. LISP has had compilers around since the 60s, although the language is older than that. Another popular language with compilers back in the 60s was COBOL. And as you maybe aware, some banks are still stuck running COBOL code (albeit modern COBOL looks nothing like 60s COBOL) And I'm just listing the highlights here. I could also talk about how C evolved from B and B evolved from BCPL. But BCPL's syntax is a lot more like ALGOL than it is C. I could also talk about how FORTRAN, ALGOL and COBOL themselves aren't really a single language but rather a class of languages too. In fact Pascal evolved from ALGOL W and ALGOL W compiler was written in PL/360 which is another ALGOL-like systems language designed specifically for the IBM System/360. Which leads nicely onto the next point that there was also a lot of machine specific or vendor specific languages out there too. In fact it was quite common for organisations to design their own language - possibly even more so then than it is now. So no, it wasn't just a decision between BASIC and Pascal in the early days. There were a lot of choices even back then. And in fact Pascal wasn't even an option in the early days because it didn't come onto the scene until 1970. Verses the 50s and 60s for all the other languages mentioned above.
- kazinator 5y agoIt seems you might have paid insufficient attention to the "in the early days of microcomputers ..." qualifying remark in the grandparent comment. When microcomputers emerged in the 1970's, in particular consumer microcomputers, many languages and other software simply did not migrate to them from Big Iron, mainly for reasons that it just didn't fit. People who started computing with microcomputers in that era would only have read about Algol or Cobol in Byte or Creative Computing; it wouldn't be found running on their Comodore Pet or what have you.
- hnlmorg 5y agoAck yes, I did miss the "micro" part of this sentence. Sorry. That all said, you'd still be surprised at the number of programming languages that were ported to microcomputers, albeit more so in the early to mid-80s rather than the very start of their evolution in the 70s. Take the British Amstrad CPC 464, that had compilers for Forth, C and COBOL (to name but a few): https://www.cpcwiki.eu/index.php/Category:Programming_software https://www.cpcwiki.eu/index.php/Category:Programming_softwa... I remember seeing a similar array of options for other microcomputers too. But I'm not disagreeing with the GPs point, those solutions I've exampled were pretty niche. I raise it more for academic interest than as a counterargument.
- kazinator 5y agoPart of that "somehow" may have been Microsoft. They provided a C development environment for MS-DOS, and developed Windows in C, imitating Unix. That probably came in via Xenix. (MS-DOS originally had "Xenix" system calls and features aped after Unix, which tells you that the developers were familiar with Xenix and thus had contact with C and Unix.) Windows API's being expressed in C might have been the catalyst that caused C to explode in the consumer PC scene. People in the computing field would have known about C in connection with Unix, but Microsoft brought system software written in C to the mass consumer market, smack in the 1980's. That would have raised the profile of C as something proven that could be used to deliver; and you could use the compiler from that same vendor, if you wanted.