typescript-go编译速度慢?Go团队连夜爆改提速5倍!

请点击上方蓝字TonyBai订阅公众号!

这两天TypeScript编译器要迁移到Go的大新闻在各大技术圈里刷屏!TypeScript之父Anders Hejlsberg亲自官宣,将TypeScript编译器移植到Go,目标是实现了10 倍的性能提升一半的内存占用

这一消息在开发者社区引起了轩然大波,许多人对Go语言的选择感到好奇,毕竟Rust也是近几年大热的系统级编程语言。Anders在访谈中详细解释了选择 Go 的原因,主要是考虑到:

  • 自动垃圾回收: TypeScript 现有代码库依赖自动垃圾回收,而 Go 提供了这一点。

  • 共享内存并发: Go 擅长共享内存并发,这对于编译器的并行处理至关重要。

  • 代码风格: Go 的函数式编程风格与现有 TypeScript 代码库更接近,迁移成本更低。


本以为这次迁移只是TypeScript团队的“家务事”,没想到,Go社区也火速行动起来,上演了一出“实力宠妻”的好戏!

就在TypeScript编译器Go移植版发布后不久,一位名叫Jorropo的开发者在Go官方仓库中提交了一个issue #72815(https://github.com/golang/go/issues/72815)


Jorropo发现,Go编译器在编译TypeScript编译器的internal/checker包时,速度异常缓慢,多核利用率很低。经过分析,他发现问题主要出在Go 编译器的逃逸分析阶段。

这个issue迅速引起了Go团队和社区的重视。Go团队成员(包括 Jake Bailey, dr2chase, thepudds等)积极响应,展开了深入调查和优化工作。

Go团队连夜爆肝,5倍提速不是梦!

经过Go团队成员的不懈努力,他们提交了多个代码变更(CL),成功地将TypeScript 编译器internal/checker包的编译速度提升了5 倍

go1.24.0:      91.792s
cl-657179-ps1: 17.578s

Go贡献者thepudds还表示,他们有信心进一步优化Go编译器的逃逸分析,未来可能实现更高的性能提升。

此外,Go团队还计划将TypeScript-Go编译器项目纳入Go编译器的基准测试(benchmark),以持续跟踪和优化其性能。

前Go团队成员幽默调侃

前Go团队成员 Filippo Valsorda 也在bluesky上对此事发表了幽默评论,他模仿社区的口吻调侃道:

“Go 社区:你说你的新编译器编译时间超过一分钟?不可接受!太丢人了!我们可不是这样办事的。

两天后:工作进展 - 5 倍加速。

杠精:为什么选择 Go?”


TypeScript + Go:强强联合,未来可期

这次 TypeScript 编译器迁移到 Go 的事件,不仅是 TypeScript 自身的一次重大技术升级,也是 Go 社区强大实力和开放合作精神的体现。

正如 Anders Hejlsberg 所说,没有任何一种编程语言是完美的,微软内部也在使用多种编程语言。选择 Go,是基于 TypeScript 的具体技术需求和务实的工程选择。

这次事件也再次证明了开源社区的力量。正是开发者们的积极参与和反馈,以及 Go 团队的快速响应和优化,才使得 TypeScript 编译器的性能得以大幅提升。

我们有理由相信,TypeScript 和 Go 的强强联合,将会为开发者们带来更高效、更强大的开发工具,为未来的软件开发注入新的活力!

让我们拭目以待!


如果本文对你有所帮助,请帮忙点赞、推荐和转发

点击下面标题,阅读更多干货!

Anders Hejlsberg专访全文:TypeScript正在向Go移植

Anders Hejlsberg亲自操刀向Go语言移植!TypeScript编译器性能狂飙10倍!

走向合规:Go加密库对FIPS 140的支持

Go开发者的密码学导航:crypto库使用指南

Go map使用Swiss Table重新实现,性能最高提升近50%

惊!Go在十亿次循环和百万任务中表现不如Java,究竟为何?


Gopher部落知识星球在2025年将继续致力于打造一个高品质的Go语言学习和交流平台。我们将继续提供优质的Go技术文章首发和阅读体验。2025年将在星球首发“Go陷阱与缺陷”、“Go原理课”的专栏!此外,我们还会加强星友之间的交流和互动。欢迎大家踊跃提问,分享心得,讨论技术。我会在第一时间进行解答和交流。我衷心希望Gopher部落可以成为大家学习、进步、交流的港湾。让我相聚在Gopher部落,享受coding的快乐! 欢迎大家踊跃加入!

著名云主机服务厂商DigitalOcean发布最新的主机计划,入门级Droplet配置升级为:1 core CPU、1G内存、25G高速SSD,价格5$/月。有使用DigitalOcean需求的朋友,可以打开这个链接地址:https://m.do.co/c/bff6eed92687 开启你的DO主机之路。

Gopher Daily(Gopher每日新闻) - https://gopherdaily.tonybai.com

我的联系方式:

  • 微博(暂不可用):https://weibo.com/bigwhite20xx

  • 微博2:https://weibo.com/u/6484441286

  • 博客:tonybai.com

  • github: https://github.com/bigwhite

  • Gopher Daily归档 - https://github.com/bigwhite/gopherdaily

  • Gopher Daily Feed订阅 - https://gopherdaily.tonybai.com/feed

商务合作方式:撰稿、出书、培训、在线课程、合伙创业、咨询、广告合作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值