Day: May 6, 2014

  • [翻译]编译器(1)-使用 Go 开发编译器

    好文不多说,系列长文,大家耐心等吧。原文在此
    ————翻译分隔线————

    编译器(1)-使用 Go 开发编译器

    概述

    我对编译器的工作原理已经感兴趣很久了。神秘的指令和奇异的行为总是会令我迷惑不已。也从未真正理解优化是如何进行的,以及编译器又是如何知道我到底做错了什么。

    当我决定学习如何编写编译器的时候,我发现有许多关于这个领域的术语和缩写。什么是 SLR 或 LALR 解析器?什么是该死的词位(lexeme)或有限自动机(finite automata)?什么是递归下降分析(recursive-descent parsing)?什么是 AST?

    最开始的时候,这真是铺天盖地。 (more…)