Anders Hejlsberg
Danish software engineer and Microsoft technical fellow who created Turbo Pascal and Delphi and is the lead architect of C# and TypeScript.
Anders Hejlsberg did not write this page.
We collected these quotes from things they published elsewhere, and every quote links to where it was said. They have no account here and have not endorsed this site. Quotes are word for word; the short line under each one is our own restatement, not their wording. Their own site. Is this you? Claim it or ask us to remove it. Or tell us what is wrong here.
-
Their wordsThat was always the idea, and that that goes back even to the predecessor of Turbo Pascal, this idea that it's not just a compiler. It's an experience, right? I mean, you don't just compile your programs. You also edit them. You also run them. You also debug them. You also have a runtime library. It all has to like fit together.
↗TypeScript, C# and Turbo Pascal with Anders Hejlsbergyoutube.com 1st of 26 in this recording
-
Their wordsIt was just better than all the competition. It was faster. It was smaller. Um it was more interactive and it was also cheaper. So, it was like 10 times better at a tenth of the price of the of the competition, right?
↗TypeScript, C# and Turbo Pascal with Anders Hejlsbergyoutube.com 2nd of 26 in this recording
-
Our reading
It is a bad strategy to bet your development platform on technology licensed from a competitor.
Their wordsAnd so, we kind of realized at that point, too, that maybe it's not a great strategy to to place your your development platform bet on on technology that's licensed from a competitor.
↗TypeScript, C# and Turbo Pascal with Anders Hejlsbergyoutube.com 3rd of 26 in this recording
-
Their wordsWell, like I said, I mean the the overarching thing was this: power and productivity of C++ with the ease of use of Visual Basic in a sense, right?
↗TypeScript, C# and Turbo Pascal with Anders Hejlsbergyoutube.com 4th of 26 in this recording
-
Their wordsI think early on we decided that we want to have a team of people design this language, not just one.
↗TypeScript, C# and Turbo Pascal with Anders Hejlsbergyoutube.com 5th of 26 in this recording
-
Their wordsAnd quite honestly, language design is 90% the same and 10% new for for pretty much every language. Every language you build still has to have a compiler. Compiler is still built in a pretty much the same way.
↗TypeScript, C# and Turbo Pascal with Anders Hejlsbergyoutube.com 6th of 26 in this recording
-
Their wordsAnd everyone was cognizant of okay, if someone comes up with a new idea, now it's our job to try to shoot it down. What What's wrong with this idea? Do Do you know what I mean? And if it could go if it could stand the the test of of that, then it was probably a decent idea.
↗TypeScript, C# and Turbo Pascal with Anders Hejlsbergyoutube.com 7th of 26 in this recording
-
Their wordsYou can have the compiler write the state machine. If you introduce syntax that allows you to indicate where you want to yield. And that's what await is.
↗TypeScript, C# and Turbo Pascal with Anders Hejlsbergyoutube.com 8th of 26 in this recording
-
Their wordsSo that's unfortunate, and that's why some environments like Go, for example, has has Go routines and green threads, which are really language emulated lightweight threads that kind of do what I'm talking about, but but at a much lower cost. But you avoid the function coloring. So there is a bunch of different things, but but you know, but for an environment that already exists like JavaScript or like C# and and the Windows event loop and and whatever, this this was the right solution.
↗TypeScript, C# and Turbo Pascal with Anders Hejlsbergyoutube.com 9th of 26 in this recording
-
Their wordsbut lo and behold, they all run browsers with JavaScript in it. Lo and behold, the real cross-platform language isn't Java. It's JavaScript.
↗TypeScript, C# and Turbo Pascal with Anders Hejlsbergyoutube.com 10th of 26 in this recording
-
Their wordsI mean, surely you're not going to be best of breed in the JavaScript ecosystem by telling people to write in a different programming language.
↗TypeScript, C# and Turbo Pascal with Anders Hejlsbergyoutube.com 11th of 26 in this recording
-
Their wordswe knew from experience that you cannot build good tooling without a type system. You can build decent tooling, but it's never going to scale. It's never going to scale to large teams cuz you can't describe your intents in in the code.
↗TypeScript, C# and Turbo Pascal with Anders Hejlsbergyoutube.com 12th of 26 in this recording
-
Their wordsAnd we we full well knew that there was absolutely zero chance that we would appeal to the JavaScript ecosystem with a proprietary programming language licensed from Microsoft. No. No one was going to come. It had to be open source. There was just no two ways about it, right?
↗TypeScript, C# and Turbo Pascal with Anders Hejlsbergyoutube.com 13th of 26 in this recording
-
Their wordsYou know, there's open source and there's open development. And and and we were technically open source in the beginning, but it was not open development. We would sort of lob the source code out in this repository and scrape the issues off of that and put it into our internal issue tracker.
↗TypeScript, C# and Turbo Pascal with Anders Hejlsbergyoutube.com 14th of 26 in this recording
-
Their wordsAnd the reason they came, I think, is absolutely because of the the better tooling. And I think we were totally right there that like adding a an erasable type system and then using that to enable great tooling is really where the pro where the programmer productivity boost is realized.
↗TypeScript, C# and Turbo Pascal with Anders Hejlsbergyoutube.com 15th of 26 in this recording
-
Their wordsAnd so everything is lazy and deferred and functional and reusable inside the compiler. And it's a very different way of writing compilers than than what the textbooks will traditionally teach you.
↗TypeScript, C# and Turbo Pascal with Anders Hejlsbergyoutube.com 16th of 26 in this recording
-
Their wordsThe thing that makes it interesting, I think, and and unlike pretty much any other programming language is the gradual typing. This This notion that you can have types, but you don't have to have types.
↗TypeScript, C# and Turbo Pascal with Anders Hejlsbergyoutube.com 17th of 26 in this recording
-
Their wordsSo, if we're checking 99% instead of 100%, well, heck, that's better than the 0% that JavaScript checked, right? And it gives you like language features that no other languages can provide because they can't get to 100%.
↗TypeScript, C# and Turbo Pascal with Anders Hejlsbergyoutube.com 18th of 26 in this recording
-
Their wordsthat the language that's most suited for AI is the language that AI has seen the most of in its training set, right? And that's why you could argue AI does really well on JavaScript and TypeScript and Python because it's seen an awful lot of it
↗TypeScript, C# and Turbo Pascal with Anders Hejlsbergyoutube.com 19th of 26 in this recording
-
Their wordsbecause if you were to force AI to write a type annotation on everything, then it would probably get it wrong more often because now it has to keep track of all these types and and it and it has to just repeat itself over and over and over, right? And so, types are important where there's no context.
↗TypeScript, C# and Turbo Pascal with Anders Hejlsbergyoutube.com 20th of 26 in this recording
-
Their wordsI mean, you could argue that we we're already past peak truth on the on the on the internet, right? And now there's there's just more and more garbage every every day. It gets harder and harder to suss out the stuff that you do want to include in the training set in order to actually make something more intelligent.
↗TypeScript, C# and Turbo Pascal with Anders Hejlsbergyoutube.com 21st of 26 in this recording
-
Their wordsbut but if you have good locality where you you clearly stating what you're importing and whatever and and you can analyze just a single source file and from that extract its protocol to the outside world without having to to know anything deeper. Do you do you know what I mean? I think those are important aspects just simply to reduce the size of the of the of the context window and also make it easier to summarize each module in a program, right?
↗TypeScript, C# and Turbo Pascal with Anders Hejlsbergyoutube.com 22nd of 26 in this recording
-
Their wordsAI today it's just starting to to become aware of you know the existence of of of language services and agents today like to use grep and awk and whatever you know to to find all the places where you reference a certain thing but it's not semantic search, right?
↗TypeScript, C# and Turbo Pascal with Anders Hejlsbergyoutube.com 23rd of 26 in this recording
-
Their wordsIn a sense, we're all turning into project managers, right? And and we can have an army of junior programmers called agents that will just spit out reams of code, but someone's got to have the big picture and review all of that. And so, increasingly our craft is going from one of writing the code to one of of reviewing the code and and building the architecture of the code and overseeing the work, if if you will.
↗TypeScript, C# and Turbo Pascal with Anders Hejlsbergyoutube.com 24th of 26 in this recording
-
Their wordsAnd ultimately also, you know, the responsibility for a program does not lie with the AI. It lies with the programmer.
↗TypeScript, C# and Turbo Pascal with Anders Hejlsbergyoutube.com 25th of 26 in this recording
-
Their wordsBut but the thing is like doing programming languages, you come to realize it's a long play. I mean, if if you look back at the the stuff I worked on, it it it goes in 10-year cycles at least. And TypeScript didn't really, for example, or C# for that matter. I mean, it took it it takes 10 years to get to, you know, version one is great, but it has all sorts of issues, and then you got to do version two, and then it's not until version three that it really starts to be great.
↗TypeScript, C# and Turbo Pascal with Anders Hejlsbergyoutube.com 26th of 26 in this recording