{"id":534853,"date":"2026-07-10T15:37:08","date_gmt":"2026-07-10T15:37:08","guid":{"rendered":"https:\/\/www.newsbeep.com\/il\/534853\/"},"modified":"2026-07-10T15:37:08","modified_gmt":"2026-07-10T15:37:08","slug":"speedier-type-checks-in-typescript-7-0-as-first-stable-go-release-ships","status":"publish","type":"post","link":"https:\/\/www.newsbeep.com\/il\/534853\/","title":{"rendered":"Speedier type checks in TypeScript 7.0 as first stable Go release ships"},"content":{"rendered":"<p>The Microsoft-led TypeScript 7.0 features an order-of-magnitude speed boost,\u00a0 a victory not only for TypeScript itself but also for Go, the programming language used to completely rewrite the web staple&#8217;s compiler.\u00a0<\/p>\n<p>Following a major rewrite effort that began with an experimental native Go implementation, this is the first stable release of the language to include its long-in-development Go-based compiler rewrite.<\/p>\n<p>\u201cTypeScript 7 brings native code speed, shared memory multithreading, and a number of new optimizations that typically yield speedups between 8x and 12x on full builds,\u201d <a href=\"https:\/\/devblogs.microsoft.com\/typescript\/announcing-typescript-7-0\/\" rel=\"nofollow noopener\" target=\"_blank\">wrote<\/a> Microsoft Principal Product Manager Daniel Rosenwasser.<\/p>\n<p>For the user&#8217;s code editor, the rewrite shortens the time it takes files to open, to search through the code, for auto-completion to awaken and do its job. You thought that the text editor was slowing you down, but in many cases, the imported TypeScript Language Server was the culprit. The speedup happens in development time, not in the deployment.\u00a0<\/p>\n<p>Too Big for JavaScript<\/p>\n<p>Last year, the TypeScript team<a href=\"https:\/\/devblogs.microsoft.com\/typescript\/typescript-native-port\/\" rel=\"nofollow noopener\" target=\"_blank\"> <\/a><a href=\"https:\/\/devblogs.microsoft.com\/typescript\/typescript-native-port\/\" rel=\"nofollow noopener\" target=\"_blank\">deliberately set out<\/a> to give TypeScript a much-needed bump in speed.\u00a0 Everything on the TypeScript language server would have to be rewritten from scratch,<a href=\"https:\/\/devblogs.microsoft.com\/typescript\/typescript-native-port\/\" rel=\"nofollow noopener\" target=\"_blank\"> <\/a><a href=\"https:\/\/devblogs.microsoft.com\/typescript\/typescript-native-port\/\" rel=\"nofollow noopener\" target=\"_blank\">proclaimed<\/a> Anders Hejlsberg, who, along with Steve Lucco,<a href=\"https:\/\/www.zdnet.com\/article\/who-built-microsoft-typescript-and-why\/\" rel=\"nofollow noopener\" target=\"_blank\"> <\/a><a href=\"https:\/\/www.zdnet.com\/article\/who-built-microsoft-typescript-and-why\/\" rel=\"nofollow noopener\" target=\"_blank\">initially built<\/a> TypeScript to bring static typing, and hence programming rigor, to JavaScript.\u00a0<\/p>\n<p>The port to native code from the original compiler, written in TypeScript and executed by the V8 JavaScript engine, was necessary for performance reasons, Hejlsberg said earlier this year. \u201cWe quickly realized we could get 10x, half of it from being native code, and the other half from being able to take advantage of shared memory concurrency.\u201d<\/p>\n<p>In the best spirit of bootstrapping, the previous version of TypeScript language server was rendered in JavaScript. But large-scale users were growing more frustrated.\u00a0<\/p>\n<p>For instance, developers at Slack<a href=\"https:\/\/bsky.app\/profile\/slack.engineering\/post\/3lry3ml3qok2f\" rel=\"nofollow noopener\" target=\"_blank\"> <\/a><a href=\"https:\/\/bsky.app\/profile\/slack.engineering\/post\/3lry3ml3qok2f\" rel=\"nofollow noopener\" target=\"_blank\">couldn\u2019t even do<\/a> a full type-check of their own code, so sluggish was their language server. Instead, the task was left for the continuous integration server.<\/p>\n<p>With TypeScript 7, full type checks can be done by the developer again at Slack.\u00a0<\/p>\n<p>In Microsoft benchmarks, compiling VScode, with its 2.3 million lines of code, took TypeScript 6 125 seconds. TypeScript 7 did the job in\u00a0 only 10.6 seconds\u2013an 11.9x increase.\u00a0\u00a0<\/p>\n<p>TypeScript 7 also made short work of other source code behemoths, including Sentry (1.9 million lines of code in 15.7 seconds), Bluesky (628,000 lines in 2.8 seconds), and Playwright (528,000 lines of code in 1.47 seconds).\u00a0<\/p>\n<p>\u00a0There goes that time to check the email.\u00a0<\/p>\n<p>Why Go triumphed<\/p>\n<p>For a Microsoft project, the team choosing Go to re-render TypeScript is a bit of a shocker. The team had the company\u2019s <a href=\"https:\/\/www.theregister.com\/devops\/2026\/05\/26\/microsoft-wants-safer-c-without-turning-it-into-rust\/5246359\" rel=\"nofollow noopener\" target=\"_blank\">none-too-shabby C#<\/a> at its disposal, and Microsoft (and the rest of the industry) nurtures a<a href=\"https:\/\/thenewstack.io\/microsoft-goes-all-in-on-rust-for-core-infrastructure-and-much-more\/\" rel=\"nofollow noopener\" target=\"_blank\"> <\/a><a href=\"https:\/\/thenewstack.io\/microsoft-goes-all-in-on-rust-for-core-infrastructure-and-much-more\/\" rel=\"nofollow noopener\" target=\"_blank\">growing fondness for Rust<\/a>.\u00a0<\/p>\n<p>Go barely scrapes into the top 20 of the latest<a href=\"https:\/\/www.tiobe.com\/tiobe-index\/\" rel=\"nofollow noopener\" target=\"_blank\"> <\/a><a href=\"https:\/\/www.tiobe.com\/tiobe-index\/\" aria-label=\"https:\/\/www.theregister.com\/devops\/2026\/05\/26\/microsoft-wants-safer-c-without-turning-it-into-rust\/5246359\" rel=\"nofollow noopener\" target=\"_blank\">Tiobe list<\/a> of popular programming languages.\u00a0<\/p>\n<p>Google engineers Rob Pike, Robert Griesemer, and Ken Thompson created Go to simplify their coding chores, creating<a href=\"https:\/\/go.dev\/talks\/2012\/splash.article\" rel=\"nofollow noopener\" target=\"_blank\"> <\/a><a href=\"https:\/\/go.dev\/talks\/2012\/splash.article\" rel=\"nofollow noopener\" target=\"_blank\">only those features<\/a> needed to build distributed applications with massive codebases. Released as open source in 2009, Golang, as it is affectionately called, found a home in the cloud native community \u2013 97.7 percent of<a href=\"https:\/\/github.com\/kubernetes\/kubernetes\" aria-label=\"https:\/\/www.theregister.com\/devops\/2026\/05\/26\/microsoft-wants-safer-c-without-turning-it-into-rust\/5246359\" rel=\"nofollow noopener\" target=\"_blank\"> Kubernetes<\/a> is written in Go.<\/p>\n<p>Go was the most suitable language for the rewrite, Hejlsberg explained in a<a href=\"https:\/\/youtu.be\/pNlq-EVld70?si=ELUGHEc82swZossT\" rel=\"nofollow noopener\" target=\"_blank\"> <\/a><a href=\"https:\/\/youtu.be\/pNlq-EVld70?si=ELUGHEc82swZossT\" rel=\"nofollow noopener\" target=\"_blank\">Microsoft video<\/a>. \u201cIt\u2019s the lowest level language we can get to that gives us full native-code support on all platforms,\u201d he explained. And it\u2019s great at concurrency.\u00a0\u00a0\u00a0\u00a0<\/p>\n<p>There were several additional reasons to choose Go, explained TypeScript development team lead<a href=\"https:\/\/github.com\/RyanCavanaugh\" rel=\"nofollow noopener\" target=\"_blank\"> <\/a><a href=\"https:\/\/github.com\/RyanCavanaugh\" rel=\"nofollow noopener\" target=\"_blank\">Ryan Cavanaugh<\/a>, in an FAQ discussion entitled \u201c<a href=\"https:\/\/github.com\/microsoft\/typescript-go\/discussions\/411\" rel=\"nofollow noopener\" target=\"_blank\">Why Go?<\/a>\u201d\u00a0<\/p>\n<p>One was purely structural similarity. Go syntax most resembles JavaScript\u2019s, which makes it easier for both man and machine to find and update both code bases. The old JavaScript server code will need to be maintained for several more years at least.\u00a0<\/p>\n<p>Go is also pretty slick at handling memory allocation. For most compilations, TypeScript can simply turn off Go\u2019s notoriously sluggish garbage collector. \u201cGo&#8217;s model therefore nets us a very big win in reducing codebase complexity, while paying very little actual runtime cost for garbage collection,\u201d he wrote.<\/p>\n<p>Go is also quite adept at graph traversal, walking up and down complex syntax trees just to understand your convoluted code.\u00a0\u00a0<\/p>\n<p>Go offers advantages to the agent<\/p>\n<p>In a<a href=\"https:\/\/spf13.com\/p\/go-the-agentic-language\/\" rel=\"nofollow noopener\" target=\"_blank\"> <\/a><a href=\"https:\/\/spf13.com\/p\/go-the-agentic-language\/\" rel=\"nofollow noopener\" target=\"_blank\">blog post<\/a>,<a href=\"https:\/\/spf13.com\/about\/\" rel=\"nofollow noopener\" target=\"_blank\"> <\/a><a href=\"https:\/\/spf13.com\/about\/\" rel=\"nofollow noopener\" target=\"_blank\">Steve Francia<\/a>, the one-time Google product and strategy lead for Go, offered four additional advantages that Go may have presented to the TypeScript masterminds: build times, dependency management, error feedback, and contributor churn.\u00a0<\/p>\n<p>If not handled well, these factors can all be frustrating for the developer, and doubly so for the automation-hungry agents of tomorrow.\u00a0<\/p>\n<p>\u201cSlow builds waste iterations, broken dependency resolution wastes entire runs, weak error feedback lets mistakes survive those runs, and ecosystem churn invalidates what the agent knew before it started,\u201d Francia wrote.\u00a0<\/p>\n<p>In the end, it may be Go\u2019s human-focused qualities, not its technical chops, that makes it an obvious choice for making TypeScript go.\u00a0<\/p>\n<p>\u201cIn a development loop, the question isn\u2019t \u2018which language is easiest to write?\u2019 It\u2019s \u2018which is easiest to write, review, and ship?\u201d Francia wrote.\u00a0<\/p>\n","protected":false},"excerpt":{"rendered":"The Microsoft-led TypeScript 7.0 features an order-of-magnitude speed boost,\u00a0 a victory not only for TypeScript itself but also&hellip;\n","protected":false},"author":2,"featured_media":534854,"comment_status":"","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[85,46,125],"class_list":["post-534853","post","type-post","status-publish","format-standard","has-post-thumbnail","category-technology","tag-il","tag-israel","tag-technology"],"_links":{"self":[{"href":"https:\/\/www.newsbeep.com\/il\/wp-json\/wp\/v2\/posts\/534853","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.newsbeep.com\/il\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.newsbeep.com\/il\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.newsbeep.com\/il\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.newsbeep.com\/il\/wp-json\/wp\/v2\/comments?post=534853"}],"version-history":[{"count":0,"href":"https:\/\/www.newsbeep.com\/il\/wp-json\/wp\/v2\/posts\/534853\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.newsbeep.com\/il\/wp-json\/wp\/v2\/media\/534854"}],"wp:attachment":[{"href":"https:\/\/www.newsbeep.com\/il\/wp-json\/wp\/v2\/media?parent=534853"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.newsbeep.com\/il\/wp-json\/wp\/v2\/categories?post=534853"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.newsbeep.com\/il\/wp-json\/wp\/v2\/tags?post=534853"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}