gpt4 book ai didi

dynamic - 为什么 Clojure 1.3 在我将变量声明为动态时说变量没有声明为动态?

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

这个问题不太可能对 future 的访客有帮助;它只与一个小的地理区域、一个特定的时间点或一个非常狭窄的情况相关,通常不适用于互联网的全局受众。如需帮助使这个问题更广泛适用,visit the help center .




8年前关闭。




我正在将工作 Clojure 代码(在 Leiningen 项目中)从 1.2 移植到 1.3 并且遇到了问题。除了代码本身不再工作之外,我还收到了许多这样的警告消息:

Warning: *tooltip-width* not declared dynamic and thus is not dynamically rebindable, 
but its name suggests otherwise. Please either indicate ^:dynamic *tooltip-width*
or change the name.

即使我已经对我用来维护状态的变量进行了正确的修改,这种情况仍在发生。例如,对于上面的错误,代码已经包含了这个:
(def ^:dyanamic *tooltip-width*   (* 1.8 *slip-width*))

我在两个地方收到这些错误:首先,从命令行,由于执行 lein swank ;其次,来自 Emacs REPL,在编译我的 core.clj 之后文件使用 C-c C-w .

为了绝对完整,这是我的 project.clj文件:
(defproject infwb "1.0.0-SNAPSHOT"
:description "an evolving, experimental workspace for manipulating infocards"
:main infwb.core

:dependencies [[org.clojure/clojure "1.3"]
[seesaw "1.2.1"]
[org.clojars.gw666/sxqj "beta2"]
[org.clojars.gw666/piccolo2dcore "1.3"]
[org.clojars.gw666/piccolo2dextras "1.3"]
[com.miglayout/miglayout "3.7.4"]
]
:dev-dependencies [[swank-clojure "1.3.2"]
[org.clojars.weavejester/autodoc "0.9.0"]]
:autodoc {:name "Infocard Workbench (InfWb)",
:web-src-dir "https://github.com/gw666/infwb/blob"})

除了让我的代码正常工作之外,我还想了解为什么我会收到这些错误 为什么我在两个地方都得到它们。谢谢你的帮助。

最佳答案

这是一个简单的错字。

(def ^:dyanamic ...

应该:
(def ^:dynamic ...

发生在我们所有人身上!

关于dynamic - 为什么 Clojure 1.3 在我将变量声明为动态时说变量没有声明为动态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8220036/

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