一句话告诉你什么叫编程语言自举!

什么是编程语言自举?

编程语言自举指的是用该语言本身编写该语言的编译器或解释器,实现了自我实现和自我维护的能力。

???啊呸,什么玩意,完全看不懂啊。

没关系,下面我用一句话告诉你。什么TM的叫自举!

人话版

以JavaScript和TypeScript为例

  • Ts最开始是用Js写的,也就是用Js去写的编译器,这个编译器负责将Ts代码编译成Js代码。

  • 当Js编译器的能力足够丰富时,能够编译大部分Ts语言特性了。就会用Ts代码去重写编译器。

  • 当Ts编译器完成后,会将他编译为Js代码,作为新版本的编译器。

  • 好了,从此之后,所有的迭代都会基于这套Ts代码去编写,编写完成之后依然再将他编译成Js代码,作为新版本的编译器。循环往复。

以上就是自举的过程

自举的好处

编程语言自举是语言成熟的重要标志,它带来多方面的好处:验证语言设计、提高开发质量和效率、构建更强大的生态系统、增强技术独立性、促进性能优化,以及创建良性的自我改进循环。尽管自举过程可能复杂且耗时,但长期来看,这种投资通常能带来显著的回报,使语言更加稳定、高效和易用。

相关推荐
RadiumAg35 分钟前
记一道有趣的面试题
前端·javascript
yangzhi_emo39 分钟前
ES6笔记2
开发语言·前端·javascript
yanlele1 小时前
我用爬虫抓取了 25 年 5 月掘金热门面试文章
前端·javascript·面试
ai小鬼头1 小时前
Ollama+OpenWeb最新版0.42+0.3.35一键安装教程,轻松搞定AI模型部署
后端·架构·github
萧曵 丶2 小时前
Rust 所有权系统:深入浅出指南
开发语言·后端·rust
中微子2 小时前
React状态管理最佳实践
前端
老任与码2 小时前
Spring AI Alibaba(1)——基本使用
java·人工智能·后端·springaialibaba
烛阴2 小时前
void 0 的奥秘:解锁 JavaScript 中 undefined 的正确打开方式
前端·javascript
中微子2 小时前
JavaScript 事件与 React 合成事件完全指南:从入门到精通
前端
Hexene...3 小时前
【前端Vue】如何实现echarts图表根据父元素宽度自适应大小
前端·vue.js·echarts