2016-07-03 2 views
1

J'écris un sketch dans Clojure/Quil en mode fun (ctional).Inspecter l'état en mode fun dans Quil en utilisant le REPL?

Parfois, je veux être en mesure d'inspecter ce que le courant state détient.

Cependant, quand je tente d'appeler Quil de state du REPL je reçois le texte suivant:

(q/state) ==> 
NullPointerException clojure.core/deref-future (core.clj:2208) 

Je ne sais pas si cela est pertinent, mais la même chose se produit avec des fonctions de dessin de la REPL:

(q/rect 0 0 10 10) 

Comment puis-je obtenir l'état actuel pour l'inspecter dans le REPL?

+1

Pouvez-vous poster un peu plus de code, esp. la fonction qui appelle 'state' et' deref-future'? – jmargolisvt

Répondre

1

Vous ne savez pas exactement de quelle fonction vous parlez puisque vous n'envoyez pas de code, donc c'est un peu aveugle.

Vous pouvez essayer de voir le state-atom:

(require '[quil.core :as q]) 

;; both should do the same 

@(q/state-atom) 
(q/state) ;; is that what you were doing ? 

La fonction d'état, vous semblez faire référence à éventuellement prend un paramètre, for instance et retourne l'état-atome quand no parameter est passé:

(q/state :image) 

Dans tous les cas, c'est généralement une bonne idée de regarder les tests d'une librairie Clojure, et le code dans ce cas semble très bien documenté.

+0

Cette question concerne principalement le REPL. Désolé je ne pourrais pas clarifier ceci beaucoup plus tôt. Je vais essayer le dessus cependant. – cwj