fsharp编译器是否将冗余函数组合减少为空操作?
f#
以下表达式是否会生成任何带有 fsharp 编译器的代码?
let xs = List.rev <| List.rev xs
回答
不,它没有。您可以查看sharplab上的输出IL以验证它会发出什么。
您可以在此处阅读有关对 F# 编译器进行编码的各种优化。它使用不同的技术优化了几件事,其中一些比其他技术得到了更好的记录。
f#
以下表达式是否会生成任何带有 fsharp 编译器的代码?
let xs = List.rev <| List.rev xs
不,它没有。您可以查看sharplab上的输出IL以验证它会发出什么。
您可以在此处阅读有关对 F# 编译器进行编码的各种优化。它使用不同的技术优化了几件事,其中一些比其他技术得到了更好的记录。