This article is more than 1 year old

TypeScript is now a 'top 10' language – just in time for the 'feature complete' 3.6 beta

Better iterators, generators... Semicolons? Who needs 'em?

Microsoft's TypeScript 3.6 beta, pushed out just before the weekend, is "intended to be feature complete", according to program manager Daniel Rosenwasser.

TypeScript is a superset of JavaScript designed to make it more suitable for building large applications.

Newly released programming language rankings from analysts Redmonk show TypeScript cracking the top 10 for the first time. Redmonk's rankings are not an absolute guide to popularity, but are based on usage in public GitHub projects and queries on the Stack Overflow developer community site.

TypeScript was "languishing in the thirties for years", said Redmonk's Stephen O'Grady, but has had a remarkable surge, overtaking both Objective-C and Swift. O'Grady attributed this to "the ubiquity of JavaScript combined with the optional safety offered by TypeScript". JavaScript itself is number one in these rankings, followed by Java, Python, PHP and C++.

JavaScript has been boosted by Google's backing for web applications as well as server-side development using Node.js or other tools. TypeScript compiles to JavaScript so can be used everywhere JavaScript is. TypeScript also compiles to readable JavaScript, unlike some that use JavaScript more as a kind of assembly language.

TypeScript 3.6 features improved Iterator types and Generator functions. A Generator function is one that returns an object you can iterate over with next() so it behaves like an array or a collection. Each call to next() calls the Generator function, which returns a value using the yield keyword and saves its state so it knows where to resume.

TypeScript 3.6 has a new Generator type and an improved Iterator type. The Iterator type now lets you specify the yielded type, the returned type, and the type of the argument to next(). The Generator type requires that there is a return method and throw method in a Generator function, improving the robustness of the code.

Another change relates to the error messages used for Promises, a common technique for asynchronous programming in JavaScript. TypeScript will now prompt if you forget to use await or the .then method, used for calling a Promise function.

Semicolons at the end of statements are optional in TypeScript, and automatic code-fixing in editors like Visual Studio Code will no longer add semicolons if it detects that a file does not use them. Improved handling of semicolons is "one of the most-demanded set of items", according to the GitHub plan for 3.6.

More details on TypeScript 3.6 are in Rosenwasser's post here.

The plan is for TypeScript 3.6 to be fully released at the end of August, preceded by a release candidate a few weeks before. ®

More about


Send us news

Other stories you might like