做语言最大的成本不是写编译器,而是建生态。
一门语言要活下来,需要三样东西:足够多的库覆盖常见场景、足够好的工具链(调试器、包管理、IDE支持)、足够大的社区贡献者。这三样每一样都是以十年为单位积累的。Python 1991年发布,到2010年代才真正爆发;Rust 2010年立项,到2020年才进入主流。国内公司没有耐心等十年。
改开源JDK就完全不同了:生态现成,Maven中央仓库几十万个包直接能用,招聘时不用培训新语言,上线就是生产级。华为搞方舟编译器做了好几年,投入巨大,到现在生态也没起来——不是技术不行,是生态的壁垒比技术高太多。
另一个现实问题是:语言成功与否取决于采用率,而采用率取决于开发者愿不愿意学。开发者学一门新语言的动机是"这门语言能帮我解决的问题比旧语言好多少"。如果只好了20%,没人愿意迁移。Go和Rust能起来,是因为它们在并发安全和性能上比C++好了不止一个量级。国内要做一门让全球开发者觉得"值得切换"的语言,得先找到一个欧美语言没解决好的痛点——这个痛点目前还没出现。
所以改JDK不是没志气,是务实。在别人的地基上盖楼,比从挖地基开始快得多。