tail-call-optimization

tail-call-optimization

文章 0 浏览 3

当引发异常时返回堆栈跟踪时,C# 尾递归优化如何实现

我看到一些关于 C# 中缺少尾部调用优化的问题,据说这使得该语言不适合递归算法实现。然而,这引出了一个问题,我们如何进行尾部调用优化,并在引发异…

小鸟爱天空丶 2024-09-28 05:33:16 9 0

为什么JVM还不支持尾部调用优化?

两年后 does-the-jvm-prevent-tail-call-optimizations,似乎有一个 原型 实施和MLVM 将该功能列为“proto 80%”已有一段时间了。 Sun/Oracle 方面是…

请帮我爱他 2024-09-17 08:56:31 12 0

生成 .tail IL 指令的简单 F# 代码是什么?

我希望看到 .tail IL 指令,但我一直在编写的使用尾部调用的简单递归函数显然已优化为循环。我实际上是在猜测这一点,因为我不完全确定反射器中的循环…

红焚 2024-09-04 12:14:54 13 0

最终的尾调用递归问题

参加这次惨败问题,我想向整个社区提出这个问题。 基于.Net的代码在什么场景下会应用尾调用优化? 请用可靠的、最新的来源或可重复的实验来支持你的答…

白云不回头 2024-08-22 06:59:58 11 0

Clojure 中的尾调用消除?

有人可以将这个 (plt) 方案代码重写为 Clojure 吗? (define (f n) (printf "(f ~a)~n" n) (g n)) (define (g n) (printf "(g ~a)~n" n) (h n)) (defi…

黯然 2024-08-20 02:45:26 8 0

gcc -fPIC 似乎与优化标志混在一起

从这个问题开始: how-do- i-check-if-gcc-is-performing-tail-recursion-optimization,我注意到将 gcc 与 -fPIC 一起使用似乎会破坏这种优化。我正…

一袭水袖舞倾城 2024-08-11 14:39:28 12 0

没有调用堆栈的架构中的尾部调用

我对最近有关 GOTO 和尾递归的问题的回答 以调用堆栈的形式表述。我担心它不够通用,所以我问你:尾部调用(或等效)的概念在没有调用堆栈的体系结构…

风流物 2024-08-05 18:54:54 10 0

为什么 Clojure 在递归添加函数上比 Scala 快得多?

一位朋友给了我这个 Clojure 代码片段 (defn sum [coll acc] (if (empty? coll) acc (recur (rest coll) (+ (first coll) acc)))) (time (sum (range …

话少心凉 2024-08-03 09:19:46 6 0

函数式语言的程序更容易出现堆栈溢出吗?

我开始学习 ocaml,并且非常欣赏该语言中递归的力量。然而,我担心的一件事是堆栈溢出。 如果ocaml使用堆栈进行函数调用,最终不会导致堆栈溢出吗?例…

萌︼了一个春 2024-08-02 07:44:28 7 0

什么是尾递归消除?

Steve Yegge 在博客文章中提到了这一点我不明白这是什么意思,有人可以帮我解答一下吗? 它与尾调用优化一样吗?…

清眉祭 2024-07-30 13:05:24 13 0

PL/SQL 是否执行尾调用优化?

我对这门语言相当陌生,我想知道尾部调用是否得到了优化。 在其他语言中,我可以检查机器代码或中间表示并自己计算出来,但我不知道如何在 PL/SQL 中…

走过海棠暮 2024-07-29 13:55:00 8 0

iPhone 版 Xcode 是否消除了尾调用递归?

Xcode 支持 iPhone 上的尾部调用优化吗?…

层林尽染 2024-07-25 12:00:06 7 0

为了实现尾调用优化,jvm 必须牺牲什么?

人们说,除了没有尾部调用优化的限制之外,clojure 实现非常出色——这是 jvm 的限制,而不是 clojure 实现的限制。 http://lambda-the-ultimate.org/…

时光无声 2024-07-24 11:15:51 10 0

尾部调用优化有什么大不了的,为什么 Python 需要它?

显然,对于 Python 是否需要尾部调用优化 (TCO) 一直存在很大争议。 当有人向 Guido 发送了一份 SICP 副本时,事情就达到了紧要关头,因为他没有“明…

梦中的蝴蝶 2024-07-22 01:29:00 13 0

F# 中如何知道函数是否尾递归

我编写了以下函数: let str2lst str = let rec f s acc = match s with | "" -> acc | _ -> f (s.Substring 1) (s.[0]::acc) f str [] 如何知道 F# …

撩心不撩汉 2024-07-18 05:31:06 11 0
更多

推荐作者

Gabu-gabumon

文章 0 评论 0

qq_CgiN62

文章 0 评论 0

荔枝明

文章 0 评论 0

¤→小豸慧

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文