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

什么是编程语言自举?

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

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

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

人话版

以JavaScript和TypeScript为例

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

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

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

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

以上就是自举的过程

自举的好处

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

相关推荐
共享家95272 小时前
搭建 AI 聊天机器人:”我的人生我做主“
前端·javascript·css·python·pycharm·html·状态模式
Halo_tjn3 小时前
基于封装的专项 知识点
java·前端·python·算法
摘星编程4 小时前
OpenHarmony环境下React Native:自定义useTruncate文本截断
javascript·react native·react.js
Duang007_4 小时前
【LeetCodeHot100 超详细Agent启发版本】字母异位词分组 (Group Anagrams)
开发语言·javascript·人工智能·python
有来技术4 小时前
Spring Boot 4 + Vue3 企业级多租户 SaaS:从共享 Schema 架构到商业化套餐设计
java·vue.js·spring boot·后端
东东5165 小时前
学院个人信息管理系统 (springboot+vue)
vue.js·spring boot·后端·个人开发·毕设
2601_949868365 小时前
Flutter for OpenHarmony 电子合同签署App实战 - 主入口实现
开发语言·javascript·flutter
三水不滴5 小时前
Redis缓存更新策略
数据库·经验分享·redis·笔记·后端·缓存
m0_748229996 小时前
Vue2 vs Vue3:核心差异全解析
前端·javascript·vue.js
C澒6 小时前
前端监控系统的最佳实践
前端·安全·运维开发