欢迎光临散文网 会员登陆 & 注册

本年写稿计划

2022-01-02 17:32 作者:clerk_ma  | 我要投稿

除了完成LaTeX书之外;除了完成编辑器系列的稿子之外;今年是准备写编译器和unicode文本处理的文章和代码。

编译器这部分,实际上是2020年年初开坑的。我最先实现的是一个正则表达式的引擎。随后更新成了一个词法分析器。接着照着家里囤积的几本编译器书写了句法生成器。虽然句法部分,我还没实现GLL和GLR。但是,实现完LALR之后显然就没什么难度了。

2021年的最后一天,吃完饺子就犯困睡着了。醒来已经是2022年的第一天的凌晨一点了,无论是公历新年还是农历新年好像都没什么新鲜感。也睡不着,把状态机和编译原理的书翻开,推了一些公式。上午九点出门跟友人去北京植物园,中间提到了这个事情。由于友人不懂技术,但是是unicode专家,所以还是能讨论正则表达式的。

知道乔姆斯基理论,然后推过一些自动机相关的数学式子的人,其实能很好地理解这些东西。但是对于一般人来讲,总有一些弄不明白的迷思在。这事还不罕见。所以我觉得正则表达式这些东西,确实还是需要讲一讲的。语言理论上的东西要讲,现实实现的东西其实也要讲。这方面,日本人写了一本书,叫《正規表現技術入門 ――最新エンジン実装と理論的背景》。

这书写的比较技术流,读起来其实还算很有意思。这书里面的一些东西,我会在讲正则表达式的部分介绍进来。

而涉及到句法部分。我这里不得不说的是,编译器设计实际上是一个有一点“古老”的技术。这类编译器的书呢,旧一些的,不意味着一点用没有;新一些的,不意味着讲的都是最新的东西。比较旧的编译器书,可能数学式的推导会比较多,这个在现在的编译器的书中就比较少了。但是就我的学习体验来说,推公式自有快感在此,所以我要写的这些东西,还是要推一些公式的,但是会有大量的文本穿插。

编译器的这些东西,实际上跟我搞的TeX和一些文本处理的代码有关。这对于我来说,是一个现实的场景。在弄懂了大部分内容之后,发现确实有用。虽然大部分程序员学编译原理可能是用在其他地方。但我想经验总是能相通的,写一写总是有好处的。


本年写稿计划的评论 (共 条)

分享到微博请遵守国家法律