点击下方“前端开发爱好者”,选择“设为星标”
第一时间关注技术干货!
哈喽,大家好,我是
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 实战教程。 回复 数据结构算法,获取数据结构算法教程。 回复 架构师,获取 架构师学习资源教程。 更多教程资源应有尽有,欢迎 关注获取。