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

Reply via email to