Menu
Sign In Search Podcasts Libraries Charts People & Topics Add Podcast API Blog Pricing
Podcast Image

The Pragmatic Engineer

TypeScript, C# and Turbo Pascal with Anders Hejlsberg

13 May 2026

Transcription

Chapter 1: What is the main topic discussed in this episode?

0.031 - 7.102 Gergely Orosz

Anders Helzberg is one of the biggest living legends in the tech industry. He created Turbo Pascal, Delphi, C-Sharp, and TypeScript.

0

Chapter 2: How did Anders Hejlsberg get into programming?

7.522 - 22.866 Gergely Orosz

The impact he has had on programming languages and developer tools is immense. Today with Anders, we discuss how C-Sharp might have not been born if it was not for the Sun versus Microsoft lawsuit over Java. The behind the scenes story of TypeScript and why open sourcing it was a huge deal inside of Microsoft.

0

22.846 - 37.89 Gergely Orosz

what he's learned from 40 years of designing languages, including why IDs and programming languages go hand in hand, and many more. If you want a behind-the-scenes look at how three of the most used programming languages in history got built and how AI might change our usage of programming languages, this episode is for you.

0

Chapter 3: What was the story behind the creation of Turbo Pascal?

38.291 - 56.179 Gergely Orosz

Before we start, I'd like to introduce our presenting sponsor for the season, Antisysys. A definite trend that I'm seeing across the industry is a lot more focused on testing. Unsurprisingly, thanks to AI. We know that software is hard to test and we also know that AI is making it worse, thanks to producing increasingly more code and more complex code.

0

56.399 - 59.944 Gergely Orosz

The bottleneck is becoming reviewing the code, testing it and trusting it.

0

Chapter 4: How did Delphi evolve from Turbo Pascal?

60.505 - 73.368 Gergely Orosz

Or is it? We tend to think that code reviews are the bottleneck because you cannot scale human reviewers with token spend. But the problem actually goes beyond code view. Really, it's about verification. We know that AI cannot verify itself.

0

73.629 - 87.498 Gergely Orosz

To verify the correctness of AI generated software, we would need to cache issues that traditional tests miss, including issues that we did not even think of in a code base that is changing at superhuman speed. Oh, and we need to do all of this before deploying to production.

0

Chapter 5: What was the design process for C# like?

87.718 - 105.575 Gergely Orosz

The only way to verify that software works is to run it with realistic faults. And this is exactly what Antisys does. You can bring the system you work on under test and verify that it works as it should. Teams at Etcd and Jane Street are doing justice, and I'm also starting to use Antisys to test real-world systems.

0

105.896 - 129.75 Gergely Orosz

Over the season, I'll be sharing a lot more on how it works and how it can help verify that a system is bug-free. In the meantime, check out antisys.com slash pragmatic to learn more. Unders, welcome to the podcast. Thank you. It's brilliant to meet you. You've created so many widely used programming languages, including the one that I learned first to program with Turbo Pascal.

0

Chapter 6: What are the advantages of using async/await in programming?

129.77 - 131.473 Gergely Orosz

How did you get into programming?

0

132.034 - 152.921 Anders Hejlsberg

Well, I was lucky enough to attend a high school that, this is back in Copenhagen, that offered students access to a computer. It was one of the first high schools in Denmark to do so. And we're talking, you know, mid to late 70s now. And I sort of got bitten by it then, you know, just this idea that you could program this machine and make it do things.

0

153.341 - 165.056 Anders Hejlsberg

You know, the wonder of figuring out how it was put together. Of course, it was like completely ancient by modern standards. It was like this HP 2100 with 32K of ferrite core memory.

0

Chapter 7: How did TypeScript come into existence?

165.096 - 185.162 Anders Hejlsberg

You could literally open it up and see the ferrite cores. I mean, it was, it was amazing. You know, paper tape reader and, uh, you know, and then we got a one megabyte, 14 inch hard drive, and that was just state of the art. The bootloader was on paper tape because there was no ROM in the machine. So, so it started up, it knew nothing.

0

185.182 - 193.675 Anders Hejlsberg

And so you had to type in the instruction sequence to load the bootloader that would then load the OS, um, off of the hard drive.

0

193.655 - 197.467 Gergely Orosz

And as a kid, what did you start to program on it? What captured your imagination?

0

197.667 - 216.342 Anders Hejlsberg

Well, this was a Hewlett Packard. So it had Fortran, which I found to be very quirky. It had a very slow, basic interpreter, but then it had alcohol. Hewlett Packard's version of ALKOL, which was an interesting compiler implementation because it didn't support recursion, which is kind of bizarre.

0

216.762 - 227.138 Anders Hejlsberg

You know, the call instruction of that machine would store the return address in the first word of the subroutine and then just execute. And then to return, you would jump to that indirect through that word.

Chapter 8: What role does AI play in Anders' current development work?

227.54 - 242.967 Anders Hejlsberg

So if you called yourself, you'd just be gone forever, you know? So, and of course there were no debuggers or anything to help you figure this out. So you just had to be real careful about which algorithms you used, but, but it was, it was compiled to machine code and they brand, you know, and it was like,

0

242.947 - 260.331 Anders Hejlsberg

You could build games, which is what we mostly did, like lunar landers and what have you kind of thing, right? And so, yeah, it was fun. Back then, things were so simple, right? You could see all the way to the bottom. I mean, there was just no layering and nothing. It was right on top of the hardware.

0

260.53 - 264.537 Gergely Orosz

I guess you needed to, you needed to see all the way to the bottom as well, pretty much right back then.

0

265.138 - 283.011 Anders Hejlsberg

Well, I mean, you, you, it was just so simple that you, you could, right. And that was the beauty of those earlier. That was true with the 8-bit micros and even, you know, the early PCs and whatever. Right. And then we've just added more and more layers over time. We have a lot of layers right now. That's for sure. We do.

0

282.991 - 290.008 Gergely Orosz

And how did you go from building games to actually building your first ever compiler? And what was that compiler?

290.349 - 311.301 Anders Hejlsberg

I started in 79 at the Danish Technical University. At that time also, You know, this was right when 8-bit micros were starting to become available. 8-bit microprocessors, right? Yes, exactly. And there was usually these kits that you bought that you had to solder together yourself. And then, of course, they didn't work. And then you have to figure out why they didn't work.

311.321 - 336.163 Anders Hejlsberg

So you learned a lot about the hardware too. And I bought a British Z80-based kit computer called a NASCOM and started learning assembly programming on that one. And then I also met with some college buddies and we ended up founding a company and we had the first computer store in Copenhagen where you could walk in and buy a computer, one of these kid computers.

336.203 - 359.428 Anders Hejlsberg

And later we sold Apple IIs and VIC-20s and Commodore 64s and blah, blah, blah, you know, all of those different ones, right? TRS-80s. So I did a lot of programming on those and found that programming was really the thing that I enjoyed. And of course, they all came with Microsoft's ROM basics. Um, And which was slow, but it allowed you to write programs.

360.128 - 378.625 Anders Hejlsberg

Um, but I always like missed having a real programming language, uh, something like Algol or that I had been taught. Right. And then by my buddy, the guy that I founded the company with, he was like, well, there's this new thing called Pascal. You ought to check it out. And it's, it's even supposed to be simpler than Algol, which was, which was actually true of every language we have created.

Comments

There are no comments yet.

Please log in to write the first comment.