gpt4 book ai didi

programming-languages - 是否有将功能代码转换为命令代码的标准化方法?

转载 作者:行者123 更新时间:2023-12-02 07:44:04 25 4
gpt4 key购买 nike

我正在编写一个从 javascript 代码生成 php 检查的小工具,我想知道是否有人知道将函数式代码转换为命令式代码的标准方法?

我找到这篇论文:Defunctionalization at Work它很好地解释了去功能化。

Lambdalifting 和去函数化在一定程度上回答了这个问题,但是数据结构呢,我们仍然在解析列表,就好像它们都是链表一样。是否有一种方法可以将函数式语言的链表转换为其他高级数据结构,如 C++ 向量或 Java 数组列表?

最佳答案

以下是@Artyom 列表的一些补充:

  • 您可以将尾递归转换为循环和赋值
  • 线性类型可用于引入赋值,例如如果 x 是线性的并且与 y
  • 具有相同的类型,则 y = f x 可以替换为 x := f x
  • 至少有两种去功能化是可能的:当你用一个充满一阶应用程序的开关替换高阶应用程序时的雷诺式去功能化,以及内联(但是,递归函数并不总是可以内联)<

关于programming-languages - 是否有将功能代码转换为命令代码的标准化方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8324120/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com