在没有嵌套 let 的情况下在 Clojure 中绑定多个相关变量

Posted

技术标签:

【中文标题】在没有嵌套 let 的情况下在 Clojure 中绑定多个相关变量【英文标题】:Binding multiple related variables in Clojure without nested let 【发布时间】:2010-11-04 08:20:39 【问题描述】:

我想在同一个 let 语句中使用一个变量的值来计算另一个变量的值。有没有办法在 Clojure 中做到这一点而不使用嵌套的 let?

嵌套 let 解决方案:

(let [x 3] 
  (let [y (+ 1 x)] 
    y)) = 4

所需的解决方案:

(let [x 3 
      y (+ 1 x)] 
   y) = 4

【问题讨论】:

【参考方案1】:

没关系,所需的解决方案可以正常工作。我想知道为什么我之前遇到了麻烦?

【讨论】:

我刚刚遇到了同样的问题,结果我在引用的表单中使用了变量,因此它没有被评估。

以上是关于在没有嵌套 let 的情况下在 Clojure 中绑定多个相关变量的主要内容,如果未能解决你的问题,请参考以下文章

在 clojure.jdbc 和 postgres 中使用保存点进行测试的嵌套事务

clojure for function resetts let

用于函数重置的 clojure

Clojure let vs Common Lisp let

let 绑定中的 Clojure 函数

`let` 在 Clojure 中是如何实现的,它的开销是多少?