https://www.zhihu.com/question/466502198/answer/1963578170

6-27 补:

问题改了,又加了个”实际完成度如何“。什么叫”完成度“?有什么标准吗?谁定的标准?

用树枝和绳索做个弓,能射出箭去,这个弓的完成度算多少?

6-26原答:

想起两年前看到的问题:小学四年级写编译器是什么水平?

强烈建议把重心放在编程语言设计上,不用为了某些喷“后端”的就把主要精力放在“摆脱依赖”、以及无底洞的性能优化上。

相比“编译器实现和优化”,对现有编程语言设计的改进、革新尤其是本地化是一块大有前景而且更少人探索的领域。作为尚未被“主流”编程语言将思维完全定势化的后来者,更可以大胆想大胆试。

用最小的代价实现语言设计,在语言使用中发现问题立刻改进,在语言设计达到满意和稳定之后,再改进语言实现(编译器)不迟。

相比手写分析器,可以考虑使用分析器生成工具减少工作量,加速迭代。如:用 rply-ulang 实现“求8的oct值”语法

另外,建议从一开始就将报错机制和报错信息的人性化考虑在内。看看网上各种“XX 语言的 XXX 报错信息是啥意思”问题可见现在市面上编程语言工具的反馈信息有多少改进空间。

一些报错信息本地化和格式改进的探索供参考:

草蟒语言重大更新:错误提示以中文展示 - OSCHINA - 中文开源技术交流社区

吴烜xuan三声:木兰编程语言报错信息分类与可用性简析 编辑于 2021-06-27 22:42