Let's say I have a function, alt: (defn alt [& functions] (fn [tokens] (some #(% tokens) functions)))
It creates a function from a bunch of sub-functions that accepts one collection of tokens and figures out which sub-function returns a true value when the tokens are plugged into it. Is there a way to change alt—maybe to a macro—that lazily evaluates the functions? This is so that with: (defn a-meta-meta-function [c] (alt (sub-function1 c) (sub-function2 c) (sub-function3 c))) ...calling ((a-meta-meta-function foo) some-tokens) doesn't evaluate (sub-function 2 c) and (sub-function3 c) until needed to receive some- tokens. --~--~---------~--~----~------------~-------~--~----~ 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 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 -~----------~----~----~----~------~----~------~--~---