Burke Holland, director of developer relations at Progress, said that the type-safety and IDE support behind TypeScript has made it a compelling language for enterprise software developers.
On that aforementioned TIOBE Index, TypeScript has not even cracked the Top 100 list of programming languages yet, but TIOBE’s editors noted the language was rising fast, moving from No. 167 to No. 137 in a single year’s time.
Onto the enterprise
TypeScript has been gathering a following in enterprise circles. But it’s not just the type-safety that draws them in, said Hejlsberg. Another great aspect of TypeScript is that Microsoft is pushing the bleeding edge of ECMAScript features into the platform, long before those features are available across browsers.
And that’s exactly what the TypeScript team has enabled. The language is already ECMAScript 2015 feature complete, so much so that the team is cherry-picking features from ECMAScript 2017, said Hejlsberg.
For the rest of the TypeScript community, 2017 should be a year of growth. Hejlsberg said that the project has been growing as major events occur, such as Microsoft moving the project from CodePlex to GitHub, or when Angular 2.0 was released last year.
The Language Server Protocol
Last year, the Language Server Protocol was announced as a collaboration among Microsoft, Codenvy and MuleSoft. This open-source protocol was built to uncouple the IDE from the language it supports. As a result, developers can now implement language supports like syntax completion, code highlighting, compilation, and refactoring in a language server instead of in any specific IDE.
Developers can use the LSP to build their own language server. When done, that language is then supported in any IDE that supports LSP. Currently, those languages are Visual Studio Code, Eclipse Che, Eclipse IDE, and even emacs. Other supported languages include Go, Groovy, Rust, Scala, Python, Haxe, PHP, OCaml, C, C++, and more.
PJ Meyer, senior product marketing manager at Microsoft, said that the Language Server Protocol has a few goals behind it. “One is to help democratize the sorts of benefits accessible by some of these systems to not just our development tools, but to any development tools,” he said,
“That’s important to help foster and continue the community, but I think also anyone writing a language server, or who wants to help contribute to the community, they can do it in a common way that will make it light up in as many tools as possible.”
The end goal is to “decrease the amount of work a developer has to do to make a project light up in their tool,” said Meyer.