78

My understanding is that in the 1980s, and perhaps in the 1990s too, Pascal and C were pretty much head-to-head as production languages.

Is the ultimate demise of Pascal only due to Borland's neglect of Delphi? Or was there more, such as C being a more robust language? If the latter, what were the perceived advantages of C over Pascal?

I'm interested in historical facts and observations one can back up, rather than likes and dislikes.

Tom Au
  • 893

10 Answers10

51

C is the base of Unix. In the 80s and 90s, Unix got more and more attention. Today some flavour of Unix is in your smartphone.

mouviciel
  • 15,491
50

Pascal has lost the battle mostly because of:

  • Verbosity (if ... then begin ... end, var A: array[0..15] of Integer)
  • Mutually incomprehensible dialects and the official standard
  • Less than impressive object-oriented extensions
  • The most successful and practical dialect - Turbo Pascal - has never been ported to platforms other than DOS/Windows. Plus Borland never opened the sources of the compiler.
  • Pascal's "last hope" - Delphi - was positioned by Borland as a database development platform targeted at corporate environments. This was an unfortunate marketing move (made by marketing people I suppose), because creative engineers hate both databases and corporate environments. Then the failure of Delphi for Linux, Kylix.
  • Apple switched to C and subsequently to Objective-C and thus it killed Pascal as an OS language
mojuba
  • 5,713
44

The essay Why Pascal is not My Favorite Language by Brian W. Kernighan covers the main points of critique. (PDF)

C is much more versatile and extendable. Some people even found out how to do (a kind of) object-oriented programming with C! Also, the inline assembler and other low-level features made it an important language for systems programming.

Felix Dombek
  • 2,129
25

Although it wasn't the exclusive use, Pascal was designed for teaching programming, not to be actually used as a primary language.

Delphi and Object Pascal changed that. But at that time, it was already to late.

dns
  • 103
20

I don't think C prevailed over Pascal. For the majority of programmers, Java prevailed over Pascal. The category of programmers who used to program in Pascal, would now pick Java (or C#) for the same job. Those who used to program in C stuck with C (and C++).

The demise of Pascal is IMHO mainly caused by Borland sticking to it's GUI way of working, while its customers moved on to the Web. Borland never had a really attractive offer for server-side development. Only in the last few years, with Delphi dead for all practical purposes, have those who stuck with Delphi moved on to C#. C/C++ has always been a different crowd than the Pascal/Java/C# crowd I think, with the C(++) guys much more technical/low-level in their focus.

Jaap
  • 2,305
13

To dumb it down: C is a portable assembler, PASCAL is an educational language.

This section on the wikipedia covers it well in fact.

edit:
It would seem, that some here misunderstand my answer. Or actually rather the question.
This question is about popularity. And the reason why C is ultimately more popular than PASCAL is, that one was designed and marketed as a portable language runnning close to the metal, while the other one was designed and marketed as an educational language, enforcing a lot of safety and clarity.
Ultimately, it doesn't even really matter, whether either language failed the goals set for it, or made unanticipated achievements. And anybody trying to deduce the difference in popularity from superiority of C over PASCAL is just plainly wrong.
The key to this question lies in history and the hysteria involved in it.

back2dos
  • 30,140
7

During the 70s and into the early 80s, C compilers were relatively easy to come by for personal computers, although most only did a subset of C (which is why you'll see so many different "tiny C" compilers adverts in the older magazines). Pascal was a larger more cumbersome language back in the days when only the wealthiest computer hobbyists had hard drives (and a 5 meg hard drive was several hundred dollars). For the Apple 2 (my first computer, and it wasn't even a "plus"), running Pascal required purchasing an extra memory card (it needed 64k of RAM!) and took several floppies to load up, while "tiny C" compilers fit on a single floppy (and could get by with 16k of RAM).

Pascal was taught in computer science curricula, while C was mostly self-taught (sometimes taught in electrical engineering curricula). Pascal got a reputation among the cowboy coders for being a "bondage and discipline language", which I thought was undeserved as they never met ADA.

The major drivers of Pascal in the 80s were Apple (because the APIs used Pascal calling standards) and Borland. Borland's "Turbo" compilers were probably the best available ones in the marketplace, and the "like a book" license made them a lot more popular than companies with more vicious licensing.

Borland lost their lead in the development market when Microsoft hired away their lead developers and project managers (such as Hejlsberg, Gross and more than 35 others), eventually developing .NET and Visual Studio. Borland and Microsoft settled the lawsuit a couple years later, but Borland never recovered from the loss. In my opinion, Delphi started withering at that time (as the folks who gave it focus and drive were hired away), and the change in CEO at the same time took Borland away from a compiler company into an ALM (application lifecycle management) company, changing their name to Inprise a couple years later. The ashes of Borland are now owned by Micro Focus.

Tangurena
  • 13,324
6

Holy smokes this is a one sided load of hooey, where are all the folks who started out on this site who had Delphi as their favorite language?

Nearly everyone mentions Borland and 2/3rds of the folks consider Delphi to have kicked the bucket. Well, sorry folks, Embarcadero bought the CodeGear unit of Borland a few years ago (for money, not charity) and they've been doing some pretty amazing things, amalgamating some pretty amazing tools into their pretty amazing IDE and creating a pretty amazing platform for cross platform development IN OBJECT PASCAL. Not to mention Lazarus and FreePascal on the open source side of things.

So, if this is a historical question why C prevailed over Pascal, then OK, that's an acceptable claim to start a question. But authorship of code in Object Pascal has been growing, I don't know that the TIOBE index means a whole lot for it, but it should be clear that people are still writing code in Object Pascal and interest spikes whenever Embarcadero releases new tools, therefore actual humans interested in writing new (not just maintaining old) code are interested in Delphi.

I'm not sure you can say the same for anything related to C.

Peter Turner
  • 6,955
2

My take is that C and major languages derived from it, C++, Java and C#, were embraced by the largest software companies, such as Microsoft and Sun/Oracle, and across the various development stacks. As a result, it became the 'mother language' of Windows, Apple OS's and Unix.

Pascal, in spite of Borland's best and often misguided efforts, didn't achieve that level of market penetration.

jfrankcarr
  • 5,082
1

Pascal only ever became popular in a single rather limited environment PC/DOS.

Even then there were as many MicroFocus COBOL applications running on PCs as there were pascal applications.

C was the basic of the UNIX operating system and all the MS/Windows operating systems.

The combination of efficient execution on limited hardware, and, native access to the underlying OS and GUI libraries were probably the main reasons for C's success. Pascal never really hacked it on windows, and, Delphi arrived too late to make a difference.