Anders Hejlsberg: From Turbo Pascal to TypeScript
Zusammenfassung
Anders Hejlsberg has designed a commercially dominant programming language in each of four decades — a record no other language designer can match. As a student in Copenhagen he wrote the Pascal compiler that Borland sold as Turbo Pascal (1983), the $49.95 product that put a professional development environment on every hobbyist’s desk. He was chief architect of Delphi (1995), Borland’s answer to Visual Basic. After a headline-making defection to Microsoft in 1996 — complete with a doubled signing bonus and a lawsuit — he became lead architect of C# (2000), the flagship language of .NET, and then created TypeScript (2012), the typed JavaScript that now underpins most large-scale web development. His career is a single sustained argument: that developer productivity is a product of language design, tooling, and compile speed working as one.
A Compiler from Copenhagen
Anders Hejlsberg (born December 2, 1960 in Copenhagen) studied electrical engineering at the Technical University of Denmark, but his education ran in parallel with something more consequential: around 1980 he wrote a Pascal compiler for the Nascom-2 microcomputer kit, sold as Blue Label Software Pascal. He rewrote it for CP/M and MS-DOS, where it sold through his Danish company PolyData as Compas Pascal and later PolyPascal. He never finished the degree; the compiler became the career.
Pascal itself was Niklaus Wirth’s teaching language — widely admired, widely taught, and served by compilers that were slow, expensive, and clumsy. Hejlsberg’s compiler was none of those things.
Turbo Pascal: The $49.95 Revolution
Philippe Kahn’s young company Borland licensed Hejlsberg’s compiler and released it in November 1983 as Turbo Pascal 1.0, priced at $49.95 when competing compilers cost several hundred dollars. The price was only half the shock. Turbo Pascal bundled editor, compiler, and runner into a single program — one of the first products in history to look like a modern integrated development environment (see The IDE Wars) — and it compiled at speeds competitors could not approach, in part because the entire system fit in well under 64 KB of memory. The edit-compile-fix loop, minutes long on contemporary tools, dropped to seconds.
Turbo Pascal sold in the hundreds of thousands and made Borland a major software company. Hejlsberg kept evolving it through the 1980s — version 5.5 (1989) added object-oriented programming — and in 1989 he moved to California as Borland’s chief engineer.
Delphi: Visual Programming with a Real Compiler
By the early 1990s, Microsoft’s Visual Basic owned rapid application development on Windows: drag a button onto a form, double-click, write the handler. Borland’s response, with Hejlsberg as chief architect, was Delphi (released February 14, 1995): the same drag-and-drop visual model, but built on an object-oriented Pascal compiled to native code, with a component library (the VCL) designed for extension. Delphi earned a devoted following that persists today, particularly in Europe — but it could not stop what was coming.
The Defection
In October 1996, Microsoft recruited Hejlsberg with a signing bonus of $500,000 plus stock options; when Borland counter-offered, Microsoft doubled the bonus to $1 million. He went. Borland sued Microsoft in May 1997, accusing it of systematically raiding more than 30 key employees to cripple a competitor; the suit was later settled. The episode became Silicon Valley legend — and for Microsoft, a bargain at any price.
Hejlsberg’s first Microsoft assignment was Visual J++, Microsoft’s Java development tool, and its Windows Foundation Classes — work that ended in a courtroom (see the Dead End below) but set up everything that followed.
C# and .NET
When Sun’s lawsuit closed the door on Microsoft’s embrace-and-extend Java strategy, Microsoft built its own platform instead. Hejlsberg became lead architect of a new language, internally called Cool, announced in 2000 as C#: garbage-collected, single-inheritance, JIT-compiled to a common runtime — a design squarely in the lineage of Java, but with Delphi’s pragmatism layered on (properties, events, delegates, and later language-integrated query, async/await, and sound value types). C# 1.0 shipped with the first .NET Framework and Visual Studio .NET in February 2002.
James Gosling sniffed that C# was “Java with reliability, productivity and security deleted”; the market disagreed. C# became one of the world’s most-used languages, the backbone of enterprise Windows development, the Unity game engine’s scripting language, and — after .NET went open-source and cross-platform in the 2010s under Satya Nadella’s Microsoft — a general-purpose server language well beyond Windows. Several C# innovations, notably async/await, were subsequently adopted by JavaScript, Python, Rust, and Swift.
TypeScript: Typing the Untypeable
By 2010, companies were building applications of hundreds of thousands of lines in JavaScript, a language designed in ten days with no static types, no modules, and no compiler to catch a misspelled property. Hejlsberg’s answer, announced on October 1, 2012, was TypeScript: a strict superset of JavaScript that adds an optional, structural type system and compiles to plain JavaScript. Existing code is already valid TypeScript; types can be added gradually; type definitions can describe existing untyped libraries.
Released as open source from the start, TypeScript grew with the JavaScript ecosystem it served — Angular adopted it wholesale in 2015, Visual Studio Code was written in it, and by the mid-2020s it ranked among the top languages on GitHub, with most large new web projects choosing it by default. In March 2025, Hejlsberg — still a Microsoft Technical Fellow, still writing compiler code in his sixties — announced a port of the TypeScript compiler to native code (written in Go) with roughly tenfold speed gains: forty years after Turbo Pascal, the same man making the same argument that compile speed is a feature.
⚠️ Dead End: Visual J++ and Microsoft’s Java
Visual J++ was Microsoft’s bid to make Java a Windows language: its Windows Foundation Classes and J/Direct gave Java programs direct access to Windows APIs — producing fast, native-feeling applications that ran only on Windows, in direct contradiction of Java’s “write once, run anywhere” promise. Sun Microsystems sued in October 1997, alleging Microsoft had violated its Java license by shipping an incompatible implementation. Microsoft settled in January 2001 (paying $20 million), agreed to phase out its Java tools, and discontinued Visual J++. As a product line it was a dead end — but a singularly productive one: the team and the lessons rolled directly into .NET, and C# inherited everything Visual J++ had learned about marrying a managed language to a real platform. Sun won the case and lost the war: C# became Java’s most durable competitor.
Fun Fact: The Whole Compiler in 39 Kilobytes
Turbo Pascal 3.0 — editor, compiler, runtime, the entire development environment — shipped as a single executable of about 39 KB. A modern “hello world” web page often downloads more JavaScript than that. Hejlsberg has noted the irony cheerfully in interviews; the TypeScript compiler he now works on is millions of lines.
📚 Sources
- Wikipedia: Anders Hejlsberg · Turbo Pascal · Delphi · C# · TypeScript
- The Pragmatic Engineer: TypeScript, C# and Turbo Pascal with Anders Hejlsberg (interview)
- Microsoft TypeScript blog: announcing the native (Go) compiler port, March 2025
- Wikipedia: Microsoft Java Virtual Machine — the Sun v. Microsoft (Visual J++) lawsuit
- Borland — Wikipedia
- Anders Hejlsberg — Wikipedia
- Anders Hejlsberg — Wikipedia