返回
Enabling Deep Recursion in C++
DOI:10.3390/computers15010015.png)
摘要
En 中文
递归通常被介绍为一种优美且具有说明性的技术,但后来往往得出结论,认为由于调用栈溢出的潜在问题,它(几乎)不应被使用。然而,递归在算法开发和测试阶段,甚至最终解决方案中,常常是首选技术。因此,需要一种简单但有效的技术来克服调用栈的限制。我们设计和实现了可扩展栈库(ESL),它提供了一个简单有效的接口,使C++能够实现深度递归。其灵活的使用模式允许在需要时使用深度递归,而无需对项目进行重大修改或定制开发工具。性能开销适中,且仅限于使用ESL的深度递归函数。该库设计灵活且跨平台,支持AMD64和AArch64处理器的Linux以及AMD64的Windows,并且可以相对容易地适配更多平台。ESL已通过一系列单元测试、实验和实践应用进行测试,证明是深度递归的有效解决方案。ESL已成功用于Wafl编程语言解释器的实现中。
AI总结
对已上传原文的论文进行重点信息的提取,主要内容包括:简要概述、研究摘要、背景介绍、关键亮点、图文解析、展望与总结。
期刊
C
IF:
4.2
论文数:
1.5K
被引数:
3.3K
机构
引用论文
Bringing Segmented Stacks to Embedded SystemsMa, Z.; Zhong, L. 将分段堆栈引入嵌入式系统。载于第24届移动计算系统与应用国际研讨会论文集,HotMobile 2023,美国加利福尼亚州新港滩,2023年2月22–23日;ACM:美国纽约州纽约市,2023年;第117–123页。[Google Scholar][CrossRef]
Mathematical Induction and RecursionO’Regan, G. 数学归纳法与递归. 见《离散数学指南》;Springer: 瑞士楚格, 2016. [Google Scholar] [CrossRef]
Refined Input, Degraded Output: The Counterintuitive World of Compiler BehaviorTheodoridis, T.; Su, Z. 精炼输入,劣化输出:编译器行为的反直觉世界。刊载于《ACM编程语言会议录》,丹麦哥本哈根,2024年6月24—28日;第671—691页。[Google Scholar] [CrossRef]

