SquiggleConf 2025:ts-go 的新进展
12 月,TypeScript 团队更新了 ts-go 项目的最新进展。总的来说,原生版本的语言服务已经比较成熟可用了,并且完全支持标准 LSP 协议。(不过我试用原生版本的第一天就发现个 bug 哈哈哈,无伤大雅)
Hi 👋,欢迎访问我的博客
我是一名前端开发者,VS Code 插件和语言服务器开发者
我目前在开发基于 LSP 的 语言服务器,也在维护用 Go 构建的编译器
在这里查看更多关于我的更多信息
我希望通过这个博客记录技术知识,提升影响力。如果你感兴趣,可以看看这些文章:
我为 VS Code 贡献了代码:这篇文章登上了阮一峰的科技爱好者周刊
LSP 与 VS Code 插件开发 第一章:记录我对 LSP 和语言服务器开发系列文章
怎么让 favicon 动起来:发现了吗,本网站的 favicon 会动
12 月,TypeScript 团队更新了 ts-go 项目的最新进展。总的来说,原生版本的语言服务已经比较成熟可用了,并且完全支持标准 LSP 协议。(不过我试用原生版本的第一天就发现个 bug 哈哈哈,无伤大雅)
聊一聊使用 Antlr 设计编程语言文法时,> 符号作为大于号( a > 0 )、泛型尖括号( List<int> )、按位右移运算符( a >> 1 )这些语义时碰到的问题。
三月有个大新闻,官方要用 Go 移植 TypeScript,号称性能提升 10 倍。
我想从语言服务器开发者的角度聊聊,这个项目的重要影响,以及它将如何影响 AI 辅助编程。
总结一些提高 antlr 词法和语法分析性能的方法。
如果你构建的是编译器,通常要预处理、预编译、编译文件,使得同一个文件的语法信息(也就是解析树或者 AST)需要用三次。
对于同样的源文件,antlr 生成的解析树(parse trees)是一样的。因此可以复用第一次的语法信息,省去两次的开销。