#clojure log - Apr 14 2008

The Joy of Clojure
Main Clojure site
Google Group
IRC
List of all logged dates

11:20 Chouser: would it be unacceptible for < and > to use Comparator interface, so they would work on non-numbers?

11:31 rhickey: I don't think so, but might be ok to have some sort of compare function that worked on both numbers and Comparables. < and > might at some point be inlined.

11:32 Chouser: ok. Perhaps (lt) and (gt) that use .compareTo ?

11:33 rhickey: something like that

11:33 Chouser: ok

11:34 MarkJP: let's say I have a function: (defn my-eval [x] (eval x)), How would I call that from java with RT.var(..).Invoke()

11:34 ?

11:34 I guess the question is, what would I pass into invoke

11:34 ?

11:35 rhickey: what do you want to eval?

11:35 MarkJP: I tried passing back the Object I get back from LispReader like so: clojure.lang.LispReader.read(new PushbackReader(new StringReader("'(+ 1 2 3)")),

11:35 false, new Object(), false)

11:36 '(+ 1 2 3)

11:36 rhickey: that should eval to 6

12:27 drewr: re lisppaste8!

12:35 kpreid: drewr: all set?

12:35 drewr: kpreid: Yup, thanks!

12:35 lisppaste8: url

12:35 lisppaste8: To use the lisppaste bot, visit http://paste.lisp.org/new/clojure and enter your paste.

12:36 drewr pasted "test" at http://paste.lisp.org/display/59111

12:38 rhickey: cool

12:39 Chouser: drewr: does that log the IRC conversation as well?

12:39 drewr: Chouser: No. :-/

12:40 Chouser: ok

17:56 vincenz: Hi

18:11 Chouser: vincenz: ni!

18:11 er, hi!

18:21 vincenz: the knights of ni?

18:23 * vincenz saw the presentation of 'conjure concurrency'

18:24 vincenz: clojure that is

18:24 * vincenz coughs

18:53 vincenz: Does the designer of clojure come in here at times?

19:20 rhickey: I'm here now

22:10 frodwith: trying to get used to the arrow notation, not sure if I quite grasp it yet. Is there an -> way to write (new PushbackReader (new InputStreamReader (. client (getInputStream))))?

22:44 Chouser: nope

22:45 -> syntax is good for patterns like: (a (b (c (d)))), which becomes: (-> a b c d)

22:47 the deep nesting has to be on the first argument. In your example it's the second arg that's nesting.

22:49 I do have a macro that would let you do: (>>_ (getInputStream) (new InputStreamReader _) (new PushbackReader _))

22:51 oops, I mean: (>>_ (getInputStream) (. client _) (new InputStreamReader _) (new PushbackReader _))

22:58 (defmacro >>_ [& exprs] (list 'let (apply vector (mapcat #(list '_ %) exprs)) '_ ))

23:07 frodwith: hmm, thanks Chouser.

23:12 landonf: Howdy

23:32 Chouser: hi

Logging service provided by n01se.net