分享

学完编译原理你有什么收获?

 始木 2019-09-02
目前正在通过上 Coursera 上 Stanford 开的 Compilers 课程和阅读《 Engineering a Compiler 》这本书自学编译原理。楼主问的是「学完编译原理你有什么收获」,那我说说学习编译原理之前我希望得到的收获。我自学编译原理,主要是纯粹对编译的过程比较好奇,知其然也想知所以然,本科时候没有修过编译原理,趁最近有点时间,就捡起来看看。我对编译原理这门课最大的期待主要是前端的部分,因为我觉得之后的工作中可能会在一些场景用到这部分的知识,比如解析复杂文本,设计并解析一种 DSL 等等。现在差不多把 parser 的部分学完了,在做编程作业的过程中,发现自己已经开始会对一门语言的语法设计进行揣摩和思考,这恐怕是意外的收获。

目前感觉前端部分还是比较理解的,后端的技术含量或许更高。虽然我现在对后端部分了解不多,但我觉得如果能学习到一些后端涉及到的算法也挺好的。

---

顺便吐个槽: Stanford 以及其他一些学校开设的编译课程的 parser 的 lab 就是学会使用 bison 或者 CUP ( lexer 的 lab 同理就是学会使用 lex ),我在想为什么不让学生直接手写一个 parser ,用递归下降写一个简单语言的 parser 应该不难,而用 bison 的话,有些过于简单了,而且自己写的东西要被编译一次才能成为编译器源代码的一部分,感觉怪怪的……

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多