Jason, thanks a lot for the tip on "source" macro in clojure.contrib.repl-utils, it is indeed very nifty!
Resolution for the day: get to know the contrib library! On Feb 2, 9:48 pm, Jason Wolfe <jawo...@berkeley.edu> wrote: > I believe that any non-special-form has a clojure implementation in > some .clj file, although that implementation may simply be a wrapper > for a method in clojure.lang.RT. > > Also check out the source macro in clojure.contrib.repl_utils. It's > quite nifty: > > user> (source into) > (defn into > "Returns a new coll consisting of to-coll with all of the items of > from-coll conjoined." > [to from] > (let [ret to items (seq from)] > (if items > (recur (conj ret (first items)) (rest items)) > ret))) > nil > > Or, if you're just interested in where a fn or macro is defined, > user> (meta (var into)) > {:ns #<Namespace clojure.core>, :name into, :file "core.clj", :line > 1771, :arglists ([to from]), :doc "Returns a new coll consisting of to- > coll with all of the items of\n from-coll conjoined."} > user> ^#'into > ; same thing, just more terse > > Cheers, > Jason --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---