In this episode of The Pragmatic Engineer, host Gergely Orosz sits down with legendary programmer Anders Hejlsberg, the mind behind iconic languages like Turbo Pascal, C#, and TypeScript. Hejlsberg shares his journey from programming on an HP 2100 with 32K of core memory in the 70s to leading language design at Microsoft, offering unique insights into the philosophy and engineering challenges behind creating widely adopted programming languages.
The conversation delves into the origins of Turbo Pascal, emphasizing the importance of integrated development environments (IDEs) from the outset, and the unexpected success of Delphi in the Windows development landscape. Hejlsberg recounts the pivotal moment at Microsoft when the Sun vs. Microsoft Java lawsuit spurred the creation of C# and the .NET runtime, highlighting the design goals that blended the power of C++ with the ease of Visual Basic.
The discussion then shifts to TypeScript, exploring its genesis as a solution to JavaScript's tooling limitations and the internal struggle to open-source it at Microsoft. Hejlsberg explains the compiler pipeline, the concept of gradual typing, and the critical role of interactive tooling in developer productivity. Finally, they tackle the burgeoning influence of AI on programming, discussing how AI agents are changing code generation, the importance of language characteristics like locality for AI, and the evolving craft of software engineering in an AI-assisted world.