Pretty sure the strategy isn't a problem (random-strategy picks a random move from all legal moves) and it works in the single-threaded command line version of the app.
ditto all-directions which is constant: (def ^:constant all-directions "Defines the array of all possible directions from a square." [[-1 -1][0 -1][+1 -1] [-1 0] [+1 0] [-1 +1][0 +1][+1 +1]]) Reasonable suggestions though. I think I'll have to create a version of get-and-make-move that just returns a random board (i.e. is as simple as possible) and see what happens. Is there a way to trace into a thread created by (future) ? On Tuesday, July 15, 2014 12:57:33 AM UTC+1, Gary Johnson wrote: > > Looking at this code without further knowledge of the strategy function, > my first guess is simply that your strategy function may not be returning a > result which satisfies the valid-move? and legal-move? predicates thus > throwing you into an infinite loop. Possibly the printf is being suppressed > within the swap! operation, but some testing would be required to see if > this is the case generally. The other obvious potential for a hiccup would > be if all-directions is somehow growing with each iteration of make-move, > thus preventing idx from ever exceeding its length. Not knowing what is > going on inside all these functions makes this a rather tricky bit of guess > work at best. Anyway, I'd try running get-move from the repl to see how > likely it is to get stuck in an infinite loop. > > Good luck, > ~Gary > -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.