Microsoft's JavaScript Superset Now a First-Class Language in Visual Studio

Microsoft updated its Visual Studio toolset by making its TypeScript superset of JavaScript a first class supported language on the platform.

Microsoft has announced the release of Visual Studio 2013 Update 2 (2013.2) Community Technology Preview (CTP) 2 and Team Foundation Server 2013 Release Candidate (RC).

Visual Studio 2013.2 CTP 2 builds on the newly added capabilities from CTP 1 while also providing functionality to make development teams even more productive, Microsoft said. Team Foundation Server 2013 Update 2 RC not only builds on the newly added capabilities but also includes a go-live license for developers to start adopting the new features in their environments. The Visual Studio release is cumulative and contains everything already released in Update 2 CTP 1.

One of the highlights of Visual Studio 2013.2 CTP 2 is that it introduces TypeScript 1.0 RC. This is the first 1.0 release of the TypeScript language and tooling, bringing it closer towards the final release as part of Update 2. Starting with this release, TypeScript is now in-the-box with Visual Studio 2013. And TypeScript 1.0 RC also is being made available for Visual Studio 2012 customers as a standalone installer. More information about the new releases is available in blog posts here and here.

TypeScript is about large-scale application development in JavaScript, Anders Hejlsberg, a Microsoft Technical Fellow, creator of C# and leader of the TypeScript team, told eWEEK.

"JavaScript is tremendously popular these days and is sort of the only game in town when it comes to cross platform, but it also is a dynamically typed language that was never really intended for more than 100- or maybe 1000-line apps," he said. "And now people are regularly writing 100,000- or 1 million line apps in JavaScript. And those apps become tremendously hard to write and even harder to maintain once they get beyond a certain size – about tens of thousands of lines or so. It's hard because JavaScript lacks a lot of these large scale application structuring concepts like classes and modules and interfaces and also static typing is notably absent in JavaScript."

Moreover, what has powered the whole revolution in integrated development environments (IDEs) over the last 10 years or so has been those large-scale structuring concepts. In particular, it has been static typing that is the deep enabler of things like IntelliSense and statement completion, refactorings, 'go to definition,' and 'find all references,' Hejlsberg said.

"Those are things that are like air to programmers today," he said. "You take that away and programming becomes a very, very hard endeavor. So the thought process behind TypeScript was what could we do to add those missing concepts to JavaScript and how could we do it in a major way that doesn't compromise the true value of JavaScript – namely that it runs in any browser on any OS on any platform. That really is what TypeScript is; it's a superset of JavaScript that compiles to plain JavaScript. And the compiler is written in itself and therefore compiles to JavaScript and runs on any platform, even on your phone."