我正在用fun(ctional)-mode用Clojure/Quil写一个草图。
有时,我希望能够检查当前state包含的内容。
但是,当我尝试从REPL调用Quil的state时,我得到了以下结果:
(q/state) ==>
NullPointerException clojure.core/deref-future (core.clj:2208)不确定这是否相关,但REPL中的绘图函数也会发生同样的情况:
(q/rect 0 0 10 10)如何在REPL中获得当前状态来检查它?
发布于 2016-07-12 19:11:50
我不确定你到底在说哪个函数,因为你没有发布代码,所以这有点盲目。
您可以尝试查看state-atom
(require '[quil.core :as q])
;; both should do the same
@(q/state-atom)
(q/state) ;; is that what you were doing ?您似乎引用的状态函数可选地接受一个参数for instance,并在传递no parameter时返回状态原子:
(q/state :image)在任何情况下,查看Clojure库的测试通常都是一个好主意,并且这种情况下的代码看起来文档化得很好。
发布于 2019-09-02 15:12:03
为了在REPL中直接调用Clojure/Quil函数,需要用当前的草图包装它们:
(quil.applet/with-applet hello-quil.core/hello-quil
(quil.core/random 10)) 要访问state,您可以执行以下操作:
(require '[quil.core :as q])
(quil.applet/with-applet hello-quil.core/hello-quil
(q/state)) 这篇文章直接取自Quil wiki:Dynamic Workflow (for REPL)
https://stackoverflow.com/questions/38171499
复制相似问题