Hacker News

Favorites Setup
Comment by sroerick | original | Things That Turbo Pascal Is Smaller Than (2011)
[−]sroerick · 2026-11-15 Sun 16:05 UTC · link
Why did Pascal basically die completely? It seems like a hugely influential language and was very loved, but there are plenty of other languages which still seem to have a lot of legacy code. Where is Pascal?
[−]coliveira · 2026-11-15 Sun 16:13 UTC · link
The main problem with Pascal was not having a standard at a time when having a standard was important for adoption. There were several successful implementations like Borland's, and the version used in the Macintosh, but being closed products they never talked to each other. It's similar to the situation of Basic: lots of code was created in Basic but none was compatible with a standard and was essentially lost.
[−]sehugg · 2026-11-15 Sun 16:18 UTC · link
Carmack developing DOOM on a NeXT and porting it to PC was a very good advertisement for C.
[−]pjmlp · 2026-11-15 Sun 18:20 UTC · link
The tooling was done in Objective-C.
[−]twoodfin · 2026-11-15 Sun 17:45 UTC · link
Not just having a standard but being able to collectively evolve a standard.

In the absence of that, Pascal’s creators and commercializers invented follow-on languages, including the most successful thread via Hejlsberg as we’re discussing here: Object Pascal -> Delphi -> C#/.NET—with a brief detour to J++, which I don’t know enough about to understand if it belongs in this sequence.

[−]pjmlp · 2026-11-15 Sun 18:19 UTC · link
Outside Borland and Apple, people tend to forget that already in 1976, Niklaus Wirth came up with Modula-2, exactly to fix all the shortcomings from a language originally designed for teaching, with one properly designed for systems programing from the start.

As for your sequence, from someone that was around back then, .NET and C# only exist as you know it thanks to Sun's lawsuit regarding Java language and runtime extensions introduced in J++.

Then an internal research language originally named Cool, became C#, the language extensions in J++ were made into C# features (events, J/Direct, COM interop), Windows Foundation Classes became Windows Forms, and J# was released in .NET 1.0 as transiton technology.

Had it not been for the lawsuit, Ext-VOS (.NET codename) would have been released with J++ instead.

https://web.archive.org/web/20190111203733/https://blogs.msd...

Follow the linked paper for Ext-VOS, aka COM+ Runtime, aka .NET.

Microsoft would revisit this COM+ Runtime a decade later with WinRT,

https://arstechnica.com/features/2012/10/windows-8-and-winrt...

[−]pjmlp · 2026-11-15 Sun 18:12 UTC · link
It certainly had a standard, two actually, however no one cared because Turbo Pascal was more relevant, and Modula-2 was designed to fix Pascal's shortcomings, which also has a ISO standard.

So it wasn't for lack of standard per se.

[−]SoftTalker · 2026-11-15 Sun 16:15 UTC · link
Lua, Go, and Nim have some Pascal roots, according to https://en.wikipedia.org/wiki/Generational_list_of_programmi...

Though Borland had some commercial success, I remember Pascal mainly as a teaching language.

[−]cwnyth · 2026-11-15 Sun 16:42 UTC · link
Odin borrows from Pascal as well.
[−]jll29 · 2026-11-15 Sun 17:01 UTC · link
Julia is also heavily influenced by Pascal syntax.
[−]SoftTalker · 2026-11-15 Sun 18:46 UTC · link
Can't believe I forgot PL/SQL, as I used that heavily for years.

Ada also was widely used in aerospace/military applications, though not sure it's still used for anything new today.

[−]anthk · 2026-11-15 Sun 16:17 UTC · link
Free Pascal/Lazarus it's rocking nice tools such as Peazip and other stuff like Carte Du Ciel and some RAD tools in the enterprise. On the niche geeky world, there's T3X at https://t3x.org which is semi-Pascal like.
[−]amelius · 2026-11-15 Sun 16:56 UTC · link
Because it didn't have nul-terminated strings.
[−]virgulino · 2026-11-15 Sun 17:34 UTC · link
Kaaaaaaaaaaaahhhnnn!!!
[−]regularfry · 2026-11-15 Sun 17:54 UTC · link
In a way it didn't, the Lazarus project is the current most well-known incarnation. But that itself tells a story: it's for desktop applications, mainly. It never really had a "here's how you do a web app" story around it. There was a period 1998-2002 when Delphi was hot (and it genuinely was very good) but all the cool kids saw PHP3 and Flash and hopped aboard, and at that point, in retrospect, you can see the start of the decline of desktop applications. By the time Rails landed in (I think?) 2008 "do everything on the web" was what a lot of people were already talking about, even if the truth of that didn't really land until much later.

Really it could have been go-lang before go-lang and I'm not sure why it wasn't other than that it wouldn't have been controllable by the folks at Google.

[−]pjmlp · 2026-11-15 Sun 18:10 UTC · link
It didn't, despite all its management failures, several companies are still buying into Delphi (Object Pascal evolved from Turbo Pascal/Apple's Object Pascal), and there is at least an yearly conference in Germany.

https://entwickler-konferenz.de/en

Then there is still FreePascal, Mikroe Pascal and RemObjects Pascal to chose from.

[−]Rochus · 2026-11-15 Sun 18:52 UTC · link
> Then there is still FreePascal, Mikroe Pascal and RemObjects Pascal to chose from.

And now also Micron, which re-added Pascal features to Oberon (https://github.com/rochus-keller/micron/).

[−]pjmlp · 2026-11-15 Sun 18:54 UTC · link
Ah, yeah, have to play with it sometime. TODO list is rather long. :)
[−]Rochus · 2026-11-15 Sun 18:58 UTC · link
A project like this never gets finished.
[−]pjmlp · 2026-11-15 Sun 19:07 UTC · link
Sorry for the misunderstanding, I meant my own TODO list of stuff to check out.

The project is rather cool.

[−]MichaelRo · 2026-11-15 Sun 18:24 UTC · link
Went the way of the dinosaurs. I learned about pointers and memory on Hi-Soft Pascal on a ZX Spectrum from this book: https://www.okazii.ro/limbajul-pascal-corina-corici-dorin-ma...

Here's a page from the book I was reading in 1993: https://imgur.com/a/7UWdGgS

For reference, ZX-Spectrum has 48Kb of RAM out of which 8Kb is video memory, so unusable.

Then you have to load the Pascal compiler into the remaining 40k of RAM. Allocate some RAM for stack and environment variables for the editor where you write your program, plus space for the actual program. Then compile your program into the same 40k of space. And run it, using heap and stack memory from which memory space? You guessed right, same 40k.

To recap, on 40k of RAM you had back then:

- The Pascal compiler

- The Pascal source code in text form

- The Pascal executable form in machine code

- The Pascal data/memory. Of which, recently in a "tech demo" of automated tests, one colleague said "unfortunately we only have a very limited amount of RAM to be able to do basically anything [that's why the product is a mess with no tests]. Only 32Gb per [virtual] machine".

One of my first programs was a Tetris clone, because ZX-Spectrum BASIC was slow as molasses. All on top of only having tape for storage so if I fucked up a pointer (I don't think Pascal had the concept of access violation back then but I sure discovered it on my own skin), it would take 5 minutes to load the Pascal compiler + some backup copy of my Tetris game, hopefully not from a month ago and hopefully I remember what I changed. Lots to discover and have "fun" with.

About a year later I did find a compiler for BASIC and it turned the unplayable BASIC code for Tetris I wrote in the 9th grade into a totally playable Tetris game, without the need to learn another language and paradigm (pointers!) but the damage was done. Ignoring a year of databases, in 12th grade of high school computer science class (elite class, found there basically all the Math olympics I was competing with in gymnasium), I got introduced to C and from then on, here I am, 30 years later, doing C++ in finance for an S&P 500 company.