啥?以后 JavaScript 叫:JS0 + JSSugar?

职场   2024-11-01 08:45   江苏  

点击下方“前端开发爱好者”,选择“设为星标

第一时间关注技术干货!

哈喽,大家好,我是 xy👨🏻‍💻。JavaScript 或将被拆分成两种语言:JS0 + JSSugar

在编程语言的世界里,JavaScript 一直以其灵活性和广泛的应用而闻名。然而,随着技术的发展和需求的变化,JavaScript 语言本身也在不断进化。

最近,一个由谷歌工程师提出的新提案引发了广泛的讨论:JavaScript 应该被拆分成两种语言吗

这将如何影响开发者和整个生态系统?

谷歌的新提案

在最近的 Emca TC39 会议上,谷歌的软件工程师 Shu-yu Guo 提出了一个大胆的提案:将 JavaScript 分为两种语言

这个提案的核心思想是创建一个核心语言(JS0),由运行时引擎实现,以及一个更强大的变体语言(JSSugar),依赖于工具链将其编译为核心语言。

JS0:核心语言
  • JS0 是提案中的核心语言,由 JavaScript 运行时引擎直接实现。这意味着 JS0 将包含 JavaScript 的基础功能,确保了语言的性能和安全性。
JSSugar:工具实现的语言
  • JSSugar 是提案中的变体语言,它包含了那些在运行时引擎中不直接支持,但可以通过编译器或工具链转换成 JS0 代码的语言特性。这将允许开发者使用新的语言特性,而不需要等待 JavaScript 引擎的更新。

为什么提出这样的提案?

提案的作者认为,新语言特性对用户的影响大多是负面的。新特性几乎总是降低安全性,对性能有中立到负面的影响,稳定性有时更差,并且只有当开发人员使用新特性时,应用程序功能才会得到改进。因此,他们建议将 JavaScript 的基础技术保持简单,以减少安全漏洞和运行时的复杂性。

开发者的影响

如果这个提案被采纳,未来的语法特性将进入 JSSugar,而只有 API 和功能特性将进入 JS0。这意味着:

  • 开发者可以立即使用新特性,而不需要等待 JavaScript 引擎的更新。
  • 工具实现者需要更多地参与到标准流程中,可能需要组建一个新的技术小组。
  • 开发者可能需要适应新的工具和编译器,以支持 JSSugar 语言特性的实现。

社区的反应

这个提案在社区中引起了争议。一些开发者担心,这将使得 JavaScript 过于依赖中间工具,而他们更希望减少对这些工具的依赖。

有人甚至表示:“请不要给当前一批 JavaScript 工具授予官方地位……许多 JavaScript 开发人员,包括我自己,都希望减少对这些工具的依赖。

JavaScript 语言的未来发展是一个复杂的问题,涉及到性能、安全性、开发者体验和社区的共识。

谷歌的这个提案提出了一个有趣的方向,但是否能够被广泛接受,还需要时间来证明。

对于这个提案,你有什么看法?你认为 JavaScript 应该被拆分成两种语言吗?欢迎在评论区分享你的观点。

写在最后

公众号前端开发爱好者 专注分享 web 前端相关技术文章视频教程资源、热点资讯等,如果喜欢我的分享,给 🐟🐟 点一个 👍 或者 ➕关注 都是对我最大的支持。

欢迎长按图片加好友,我会第一时间和你分享前端行业趋势面试资源学习途径等等。

添加好友备注【进阶学习】拉你进技术交流群

关注公众号后,在首页:

  • 回复 面试题,获取最新大厂面试资料。
  • 回复 简历,获取 3200 套 简历模板。
  • 回复 React 实战,获取 React 最新实战教程。
  • 回复 Vue 实战,获取 Vue 最新实战教程。
  • 回复 ts,获取 TypeScript 精讲课程。
  • 回复 vite,获取 Vite 精讲课程。
  • 回复 uniapp,获取 uniapp 精讲课程。
  • 回复 js 书籍,获取 js 进阶 必看书籍。
  • 回复 Node,获取 Nodejs+koa2 实战教程。
  • 回复 数据结构算法,获取数据结构算法教程。
  • 回复 架构师,获取 架构师学习资源教程。
  • 更多教程资源应有尽有,欢迎 关注获取。

前端开发爱好者
分享 web 前端相关技术文章、工具资源、精选课程、视频教程资源、热点资讯等
 最新文章