gpt4 book ai didi

programming-languages - "compose well"对某些东西意味着什么?

转载 作者:行者123 更新时间:2023-12-03 20:24:15 25 4
gpt4 key购买 nike

很多时候,我遇到过以下形式的陈述
X 作曲/作曲不好。

我记得我最近读过的几个例子:

  • 宏组合不好(上下文:clojure)
  • 锁组合不好(上下文:clojure)
  • 命令式编程的组合不好...等

  • 我想了解可组合性在设计/阅读/编写代码方面的含义?例子会很好。

    最佳答案

    “组合”函数基本上只是意味着将两个或多个函数粘在一起以形成一个大函数,以有用的方式组合它们的功能。本质上,您定义了一系列函数并将每个函数的结果通过管道传送到下一个函数,最终给出整个过程的结果。 Clojure 提供了 comp功能为您完成此操作,您也可以手动完成。

    可以创造性地与其他函数链接的函数通常比只能在特定条件下调用的函数更有用。例如,如果我们没有 last函数并且只有传统的 Lisp 列表函数,我们可以轻松定义 last(def last (comp first reverse)) .看看那个——我们甚至不需要 defn或者提及任何参数,因为我们只是将一个函数的结果传递到另一个函数中。例如,如果 reverse,这将不起作用。采取了就地修改序列的必要途径。宏也有问题,因为你不能将它们传递给像 comp 这样的函数。或 apply .

    关于programming-languages - "compose well"对某些东西意味着什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4111715/

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