It’s 50 years of the Pascal language and Delphi is its heir, empowering Pascal developers in today’s complex scenarios, despite being ignored by the Pascal language inventor
Niklaus Wirth published the paper “The programming language Pascal” in March 1971, which means it is exactly 50 years this month since the Pascal programming language was officially launched.
The renowned computer scientists celebrated the anniversary by writing a very interesting viewpoint article for Communications of the ACM (March 2021, Vol. 64 No. 3, Pages 39-41) and titled 50 Years of Pascal.
The article is fully worth reading and I suggest you to go over it before continuing with this blog post. I’ll wait here… Done? OK, good, here are my comments.
The first historic ad for Borland Turbo Pascal
Table of Contents
Rooted on Type Safety
I want to start by mentioning that there is no reason to be shy of the Pascal inheritance that lives in Delphi. Pascal has been one of the most successful programming languages ever and it brought to the table concepts like type safety and a focus on code readability and maintainability that are core tenets of any programming language today.
As Wirth writes of the key ideas of Pascal, “a significant extension were data types and structures… most essential was the pervasive concept of data type… This contributed to the detection of errors, and this before the program’s execution”. In a world of dynamic languages, this remains a key idea and differentiator (and a reason for safer languages like TypeScript to exist).
Borland Made the Splash
While Pascal quickly gained acceptance in Universities, it took a few more years (starting with 1983) for it to become mainstream. As Wirth writes:
“Philippe Kahn at Borland Inc. in Santa Cruz surrounded our compiler with a simple operating system, a text editor, and routines for error discovery and diagnostics. They sold this package for $50 on floppy disks (Turbo Pascal). Thereby Pascal spread immediately, particularly in schools, and it became the entry point for many to programming and computer science.”
Having a very fast compiler was a key tenet of Turbo Pascal (and this is still true for Delphi today), along with an affordable price. And at the time DOS became mainstream, Turbo Pascal was so much more powerful than the built-in Visual Basic.
An early Turbo Pascal manual
Academic Successors… Ignoring the Industry
In the last part of the article Wirth goes at length into covering all of the languages that followed the original Pascal, starting with Modula-2 (which shares with Turbo Pascal the notion of compilation modules or units, as we call them even today).
From this point, the article focuses on Oberon, a very nice object-oriented extension of Pascal data type system, but one that had very limited success compared to Apple’s Object Pascal and (more notably) Delphi.
Wirth writes: “Even today Oberon is successfully in use in many places. A breakthrough like Pascal’s, however, did not occur.” While it is true that Oberon wasn’t a breakthrough, he fails to consider that a different object-oriented extension of Pascal, Delphi, had a huge popularity in the late 90ies, comparable to that of Turbo Pascal in the early days. So while he’s formally correct that academic versions of Pascal like Oberon had limited success, nothing compares to the success of the many Object Pascal dialects in the industry, including but not limited to Delphi.
Today Delphi is still extremely successful compared to Oberon and any other Pascal derived language and remains one of the 20 most used programming languages, according to most sources. I’m not sure if Wirth deliberately chose to ignore Delphi in his history of Pascal. It is clear he decided to focus only on his academic route, his journey to achieve the perfect Pascal language (“The sequence Pascal–Modula–Oberon is witness to my attempts to achieve it.”). However one of the reasons he should be proud of Pascal is the fact that Pascal-derived languages are actively used in the industry today. Ignoring Delphi seems like a glaring omission to me.
Pascal is still largely used in the IT world due to Delphi today and its impact in the industry at large remains powerful. When Wirth claims that “many of those languages, like Java (Sun Microsystems) and C# (Microsoft) have been strongly influenced by Oberon or Pascal” he misses the fact it was Delphi, more than the original Pascal or Oberon, to have influence on C# via the ideas of Anders Hejlsberg, but also on Java via the collaboration of Borland and Sun on the concept of properties.
The Delphi IDE today
Pascal Is Alive in Delphi
Again it is great to celebrate 50 years of Pascal, a remarkable language that deeply influenced our industry. But it is even nicer to celebrate it along with Delphi’s 26th anniversary and after our 10.4.2 release that brings an unparalleled support for Windows 10 client development (one of the best in the industry), an even faster compiler capable of going over millions of lines of Pascal-based code in minutes, and the unique ability to target many operating systems (Windows, Linux, macOS, Android, iOS) with the same source code including the user interface.
Delphi is still rocking the world, so we owe a big thank you to Wirth, Hejlsberg, and Kahn — but also to the developers and managers who kept Delphi alive and kicking over the years and the great team working on it today.
Delphi’s 25 years celebration Easter egg
Design. Code. Compile. Deploy.
Start Free Trial Upgrade Today
Free Delphi Community Edition Free C++Builder Community Edition
I have a blown up framed original Turbo Pascal Byte Magazine ad in my home office. It reminds me of the roots of Delphi and my own programming language growth 😀
Good old days, indeed! 🙂
It is a bit interesting that Wirth writes “our” in:
“Borland … surrounded our compiler with …”
Other than being Pascal-based it wasn’t Wirth’s compiler, it was Anders Hejlsberg’s compiler written in assembly:
The Turbo Pascal compiler was based on the Blue Label Pascal compiler originally produced for the NasSys cassette-based operating system of the Nascom microcomputer in 1981 by Anders Hejlsberg.”
Visual BASIC came after Turbo Pascal and it is NOT built-in to DOS nor Windows. Delphi came later than Visual BASIC but it more powerful. If I was not mistaken, Delphi allows building of components while Visual BASIC cannot. VB relies on 3rd party VBX and later OCX components.
Object Pascal (OP) itself is an extension of the Pascal language that was developed early at Apple Computer by a team led by Larry Tesler in consultation with Niklaus Wirth, as inventor of Pascal. It is descended from an earlier object-oriented version of Pascal called Clascal, which was available on Lisa computer.
Apple dropped support for OP when they moved from Motorola 68K chips to IBM’s PowerPC 1994.
An OP extension was also implemented in the Think Pascal IDE. IDE includes compiler and editor, a powerful debugger and a class library. Development stopped after 4.01 version because company was bought by Symantec. Developers then left the project.
It would be awesome if Delphi became a superset of ISO 7185 Standard Pascal. That would mean the requirement of the listing of the text files input and output as parameters of the program header, i.e. program hello (input, output); the implementation of the procedures get and put, and support for file buffer variables; conforming the round function and the mod operator to this Standard; and support for procedural parameters as required by the ISO 7185 Pascal Standard. These implementation features would make Delphi compliant with the ISO 7185 Pascal Standard at level 0. In order for Delphi to comply with the ISO 7185 Standard at level 1, it should also support conformant-array parameters.
In my humble opinion, by doing this, not only would Delphi celebrate and thank Pascal for being the base and inspiration for its conception, but it will also allow Delphi to be a truly genuine Pascal compiler, and would bring back the availability of an excellent ISO 7185 Standard-compliant Pascal compiler for both the old and new generations of Computer Science students and professional programmers. Long live Pascal!
… ” And at the time DOS became mainstream, Turbo Pascal was so much more powerful than the built-in Visual Basic ” …
>> DOS versions by IBM (PC-DOS) included the BASICA interpreter.
>> DOS versions by Microsoft (MS-DOS) included the GW-BASIC interpreter (versions 1 to 4) and the QBASIC IDE/interpreter (versions 5 to 6).
>> Visual Basic 1.0 for Windows was introduced in 1991 as a stand-alone product (purchased separately).
>> Visual Basic 1.0 for DOS was introduced in 1992 as a stand-alone product (purchased separately).
I guess Marco’s comment really meant to say:
==> ” … And at the time DOS became mainstream, Turbo Pascal was so much more powerful than the built-in BASICA/GW-BASIC/QBASIC basic interpreters …”
If Delphi was more affordable for the everyday hobbyist or novice programmer, Pascals popularity would probably double.
Maravilha de artigo, amo a Linguagem Pascal!
Delphi >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>Java e C!