美文网首页
从0开始自制解释器

从0开始自制解释器

作者: 一叶障目 | 来源:发表于2023-03-03 11:24 被阅读0次

作为一个程序员,自制自己的编译器一直是一个梦想。之前也曾为了这个梦想学习过类似龙书、虎书这种大部头的书,但是光看理论总有一些云里雾里的感觉。看完只觉得脑袋昏昏沉沉并没有觉得有多少长进。当初看过《疯狂的程序员》这本书,书里说,真正能学会编译原理并不是靠看各种书然后通过相关考试,而是有一天你的领导找到你对你说:“小X啊,你是我们公司技术能力最强的人,咱们现在用的编译器性能有点跟不上,要不你看看能不能改进一下”。所以想要学习编译原理相关的知识首先要做的还是实践——实现一个自己的编译器。

之前也看过类似的教你如何自制编译器,但是他们有一个共同的问题就是在很大程度上都借助第三方工具,隐藏了一些底层的细节。我希望的是每一行代码都是自己的完成的。所以一直怀揣着这个梦想直到最近我找到了一篇教程。一起写一个简单的编译器——魔力Python。这篇教程是实用Python完成的,但是这里我不打算使用Python,我打算实用最纯粹的C 语言来完成这个任务,我考虑使用C主要基于以下几个原因:

  1. Python 有一些封装的细节,不方便全方位的展示相关算法。
  2. 原教程使用的就是Python,还用一样的话思路会受到教程的影响,要真正的理解需要自己一行行的敲代码,最好的方式就是用另一种语言来实现同样的算法
  3. 现在市面上大多数都是用c来实现编译器,如果后续想要更近一步学习编译原理可以考虑在我完成的这版中很方便的加入一些新学的知识点
  4. 自己有使用C的能力,而且用C写编译器自带装B属性

基于以上理由,我准备开始跟着教程使用C来实现自己的解释器。

这并不是一篇教程什么的,更多的是作为一篇实践笔记。而且根据我之前写的Vim专栏的经验来说,将它已专栏的形式发布出来之后鸽的可能性更小,更有动力来完成它。当然如果各位能从专栏中学到什么那就更好了。

总之后面让我们一起进入学习编译原理的路程吧

相关文章

  • 从0开始自制解释器

    作为一个程序员,自制自己的编译器一直是一个梦想。之前也曾为了这个梦想学习过类似龙书、虎书这种大部头的书,但是光看理...

  • 自制简易解释器

    title: 自制简易解释器date: 2019-02-18 22:00:01origin: 自制简易解释器 自制...

  • Scala学习笔记1——Scala入门

    从使用Scala解释器开始 输入任意的Scala表达式,比如输入1+2,解释器显示:res0:Int = 3 这行...

  • 8位频率计

    模10计数器就是从0开始计数,到9就进一位; 对阻塞和非阻塞赋值的详细解释:https://www.cnblogs...

  • 【前】自制脚本语言

    前言 自制语言,说到底就是编译和解释,这里就会涉及到编译器和解释器。 编译器:将某种语言写成的程序转换为另一种语言...

  • Python 并发总结

    0x01 GIL锁 C语言写的Python解释器存在全局解释器锁GIL(Global Interpreter Lo...

  • 长地址转短地址

    发号器,mysql 从0开始递增redis 等 进制算法

  • 从0开始

    不想再碌碌无为继续这么混下去了好嘛

  • 从0开始

    空杯心态,说着容易做着难。 当我们从有了孩子的欣喜若狂,到孩子第一天上幼儿园的充满希望,然后到小学三四年级的开始纠...

  • 从0开始

    当一家公司开始招聘专业安全人员的时候,意味着安全对这家公司已经比较重要了,比如曾发生一些入侵或者信息泄漏等安全事件...

网友评论

      本文标题:从0开始自制解释器

      本文链接:https://www.haomeiwen.com/subject/gzwsldtx.html