On Thu, Mar 8, 2012 at 1:47 PM, Jeff Weiss wrote:
> A serializable.fn/defn would be really nice to have, I am not sure how
> difficult it would be to write, without having tried it.
In theory, not very difficult. Something like
(defmacro defn [name & everything-else]
`(clojure.core/defn
~
I use serializable.fn pretty extensively, and it's been working great for
me. I think at this point, the only fix I put in that Phil didn't is that
my serialized fn's print with an unqualified "fn" symbol, instead of
"serializable.fn/fn". I did that so it's more readable, the tradeoff is
that
If you are just printing it to the screen, print or println will do
what you want. There shouldn't be a need for a pretty printer, the
source is already formatted exactly as it was written.
On Tue, Mar 6, 2012 at 1:02 AM, Nikem wrote:
> Thank you for your help! :)
>
> I managed to get repl/sour
Thank you for your help! :)
I managed to get repl/source-fn to read source from external namespace. But
print gives me
"(defn buy? [today]\n (and\n(not (nil? today))\n"
Everything on one line with "\n" instead of new lines. Shouldn't pretty
print handle this?
Best wishes
Nikem
On Tue
Nikem writes:
> java -jar lib/clojure-1.3.0.jar
> user=> (defn qw []
> (inc 2))
> #'user/qw
> user=> (use 'clojure.repl)
> nil
> user=> (clojure.repl/source-fn qw)
> ClassCastException user$qw cannot be cast to clojure.lang.Symbol
> clojure.core/ns-resolve (core.clj:3879)
> user=> (clojure.r
java -jar lib/clojure-1.3.0.jar
user=> (defn qw []
(inc 2))
#'user/qw
user=> (use 'clojure.repl)
nil
user=> (clojure.repl/source-fn qw)
ClassCastException user$qw cannot be cast to clojure.lang.Symbol
clojure.core/ns-resolve (core.clj:3879)
user=> (clojure.repl/source-fn 'qw)
nil
user=> (prin
Mark Rathwell writes:
> (clojure.repl/source-fn 'qw) will give you the source.
You can also use serializable-fn to create a function that will carry
its source around with it in metadata:
https://github.com/technomancy/serializable-fn
But it's not very well tested.
-Phil
--
You received thi
(clojure.repl/source-fn 'qw) will give you the source.
On Fri, Mar 2, 2012 at 10:32 AM, Nikem wrote:
> Hi.
>
> Is it possible to pretty print a source code of the function defined
> with defn? I have tried the following:
>
> (defn qw []
> (inc 2))
>
> (with-pprint-dispatch code-dispatch (pprint
Hi.
Is it possible to pretty print a source code of the function defined
with defn? I have tried the following:
(defn qw []
(inc 2))
(with-pprint-dispatch code-dispatch (pprint qw))
And got #. But I would like to get at least
"(inc 2)". Is it possible at all?
Nikem
--
You received this mes