Mono (2.11) 上 F# 的尾调用优化的当前状态是什么? [英] What is the current state of tail-call-optimization for F# on Mono (2.11)?
问题描述
Mono (2.11) 上的尾调用优化 (TCO) 实施的当前状态是什么?在某处阅读需要修改所有代码库以使用 callee-pops-arguments 约定的地方.这种变化的状态是什么?ARM/Linux 端口在这件事上是最新的吗?
What is the current state of Tail Call Optimization (TCO) implementation on Mono (2.11) ? Read somewhere that all the codebase would need to be modified to use a callee-pops-arguments convention. What is the status of this change ? Is the ARM/Linux port up to date on this matter ?
谢谢!
推荐答案
Tail 调用肯定适用于 linux 上的单声道 - 使用测试
Tail calls definitely work on mono on linux - tested using
let rec f a = f (a+1)
没有崩溃 - 在 Mono 2.10.2 上测试
which didn't crash - tested on Mono 2.10.2
使用来自 Brian 的链接进行测试 - https://bugzilla.novell.com/show_bug.cgi?id=476785
Tested with link from Brian - https://bugzilla.novell.com/show_bug.cgi?id=476785
尽管生成了 .tail
指令,但它还是在 Mono 2.10.2 上崩溃了
which crashes on Mono 2.10.2 despite generating .tail
instructions
这篇关于Mono (2.11) 上 F# 的尾调用优化的当前状态是什么?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!