By creating new game objects rather than mutating existing ones you could do 
things you wouldnt otherwise be able to do. Perhaps you have different solver 
strategies that you want to apply in parallel. Provided you can give each 
solver its own copy this is trivial, but if your datastructures require 
mutation this gets messy fast.  
When passing objects as parameters dependencies are more explicit, you can of 
course group related objects together and pass them as a single parameter and 
what not.. destructuring as needed.  In practice its not as bad as it seems. 
For values like configuration settings that are not usually changed you might 
consider dynamic vars to reduce number of parameters. 

-- 
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

Reply via email to