This is definitely a good place to start. At very least getting most of the functions away from the global bits. Thanks!
On Apr 14, 10:42 am, jweiss <jeffrey.m.we...@gmail.com> wrote: > I'd start by making functions that take arguments. For instance (defn > draw-ball [ball] ...) > > On Apr 13, 1:22 pm, Brandon Ferguson <bnfergu...@gmail.com> wrote: > > > > > > > > > I'm not sure if this is the place to ask this but I've been struggling > > with a few things in the world of Clojure. I've been using Processing > > to learn Clojure (since I'm somewhat familiar with Processing) but the > > tough part has been dealing with things like x, y positions of objects > > without keeping some global state (I'm not sure if it's even > > possible). > > > The code in question is:https://gist.github.com/887256 > > > All this does is bounce a ball around a screen, for every frame > > Processing calls draw which moves the ball one frame. Since I'm not > > the one driving the loop I ended up using atoms to update some bits of > > global state but that feels really dirty. > > > If I could drive the frames it would be easy to use recur or some > > other bit of state passing as I render each successive frame. I've > > considered using sequences and passing a frame number (which would be > > stored in a global as well) in but then it'd (I assume) have to run > > through every number up to that the one I passed it. Seems like > > performance would degrade the longer it ran. There's also this idea > > rattling around in my head where I'd just rewrite the function > > everytime with the new state - but seems like you couldn't scale that > > to multiple balls bouncing around (which is the next step) - and God > > knows what, if any, performance implications that would have. > > > So I'm not sure where that leaves me - learning functional stuff can > > be wonderfully mind breaking but sometimes I feel like I don't even > > have the tools in my head to work some things out. Is there some > > technique I'm missing for dealing with state between successive calls > > of a function? > > > How would you solve something like this? > > -Brandon -- 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