1
功能性中间形式的缺点
我正在为类似于JavaScript的语言编写优化器,并且需要选择一个中间代码表示形式。如今,显而易见的/典型的选择是静态单一分配(SSA)。 但是,C语言中的Modern Compiler Implementation也讨论了功能中间形式,这基本上意味着对中间表示使用纯功能(仅在局部变量方面是纯函数,堆数据仍然是可变的,而在CPS方面则是可变的,只是简单的let块和尾调用)。在易于推理方面具有一些优势。 大概这不是理所当然的,或者每个人都已经在使用这种表示形式了,所以我的问题是,功能性中间形式与SSA相比有哪些缺点?