If the success/failure of the function makes sense to represent in game-world terms, you could encode the information in the world object, perhaps as a flag that can be attached to the relevant object. In your example, the unit might be given a "state" with the value :blocked, indicating that something is currently blocking its movement.
Another option would be metadata, though that feels ugly to me. Or the simplest option: just have your functions return nil to indicate that the world state should remain unchanged from its previous value. [Minor nitpick about your email: lisps aren't necessarily functional (e.g. Common Lisp).] -- 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