标签: compiler-construction language-agnostic programming-languages language-features language-translation
编译的哪个阶段(扫描,解析,语义分析的某些部分,甚至可能是 代码生成)是通常处理的语法糖,它是如何以及它是什么原因?
答案 0 :(得分:3)
最容易做到这一点的地方往往是建立AST - 即在解析过程中 - 因为这使得desugaring明显且可验证,之后糖不需要处理任何语义分析和代码生成过程中的方式。
这是一个非常一般的指导原则,在无数种情况下你可以选择不同的策略。