Re: Slurping structs from file fails with whitespace string attributes

2009-06-07 Thread Perttu

Thanks!

Sorry about double-posting, the message took over 24 hours to appear
here.

-Perttu

On May 29, 2:56 pm, J. McConnell jdo...@gmail.com wrote:
 On Thu, May 28, 2009 at 4:23 PM, Perttu perttu.aur...@gmail.com wrote:

  I use a store-function like this:

  (defn store-customer-db [customer-db filename]
   (spit filename (with-out-str (print customer-db

 I believe this is your problem. The print/println functions print in a
 format suitable for human consumption. That's why you don't see quotes
 around the strings. These are the functions you would normally use for, for
 example, echoing instructions to a console user.

 I believe what you are looking for are the pr/prn functions (pr in
 particular). These are designed to print objects for reader consumption.

 HTH,

 - J.
--~--~-~--~~~---~--~~
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
Note that posts from new members are moderated - please be patient with your 
first post.
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
-~--~~~~--~~--~--~---



Re: VimClojure v2.1.1 is released

2009-06-07 Thread e
if someone just has a vimclojure set up for mac/tiger (and one for Windows)
that can somehow be bundled, I'd be interested.  I still haven't settled
into any sort of reliable/intuitive environment for developing in clojure --
it's by far the biggest hurdle to everyone I know trying to get into it.

Thanks.

- Eli

On Sat, Jun 6, 2009 at 12:27 PM, Emeka emekami...@gmail.com wrote:

 This is probably the global _vimrc installed by Vim I think as much, vim
 needs this file to run.
 If you installed Vim as an administrator  I  always work as administrator.
 I will create that file and now what and what am I going to add to it.

 Regards,
 Emeka



 O


 On Sat, Jun 6, 2009 at 4:03 PM, Meikel Brandmeyer m...@kotka.de wrote:

 Hi,

 Am 06.06.2009 um 17:47 schrieb Emeka:

  Then it is pretty obvious that I have erred again.
 C:\Program files\Vim\_vimrc That's where I found that file.


 This is probably the global _vimrc installed by Vim.
 You should first try a _vimrc in your home directory.
 Just create it if it doesn't exist. If you installed Vim as
 an administrator and now work as a normal user
 that might explain, why you are not allowed to edit
 the file.

 Sincerely
 Meikel



 


--~--~-~--~~~---~--~~
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
Note that posts from new members are moderated - please be patient with your 
first post.
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
-~--~~~~--~~--~--~---



Re: What books have helped you wrap your brain around FP and Clojure?

2009-06-07 Thread Danny Woods

+1 for Higher Order Perl.  The author, Mark Jason Dominus, has made
the book available for free download at http://hop.perl.plover.com/book/.

Cheers,
Danny.

--~--~-~--~~~---~--~~
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
Note that posts from new members are moderated - please be patient with your 
first post.
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
-~--~~~~--~~--~--~---



New and stuck ??

2009-06-07 Thread darrell

Any ideas ?
Mac OS-X

~/Downloads/clojure_1.0.0$ java -cp clojure.jar clojure.lang.Repl
Exception in thread main java.lang.NoClassDefFoundError: clojure/
lang/Repl

~/Downloads/clojure_1.0.0$ java -cp clojure.jar /clojure.main
Exception in thread main java.lang.NoClassDefFoundError: /clojure/
main

~/Downloads/clojure_1.0.0$ ls
build.xml epl-v10.html  pom.xml   src
clojure-1.0.0.jar pom-template.xml  readme.txtsvninfo.txt

~/Downloads/clojure_1.0.0$ java -version
java version 1.5.0_16
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_16-
b06-284)
Java HotSpot(TM) Client VM (build 1.5.0_16-133, mixed mode, sharing)

-= Darrell

--~--~-~--~~~---~--~~
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
Note that posts from new members are moderated - please be patient with your 
first post.
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
-~--~~~~--~~--~--~---



timing for map

2009-06-07 Thread artg

user= (time (map answer '(50 50)))
Elapsed time: 0.032826 msecs
(392330 392711)
user= (time (answer 50))
Elapsed time: 6357.131423 msecs
392849

When I try to time 'map' it seems to return right away.  How do I time
the full two executions of 'answer'?

--~--~-~--~~~---~--~~
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
Note that posts from new members are moderated - please be patient with your 
first post.
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
-~--~~~~--~~--~--~---



Re: timing for map

2009-06-07 Thread Kyle R. Burton

I map produces a lazy sequence, time doesn't force it, if you wrap it
in either a dorun or doall, you should get what you expect:

user (time (map #(Thread/sleep %) '(1000 1000 1000)))
Elapsed time: 0.156 msecs
(nil nil nil)
user (time (doall (map #(Thread/sleep %) '(1000 1000 1000
Elapsed time: 3000.383 msecs
(nil nil nil)
user



I think that is what you're running into.


Kyle

On Sat, Jun 6, 2009 at 5:02 PM, artg artgittle...@gmail.com wrote:

 user= (time (map answer '(50 50)))
 Elapsed time: 0.032826 msecs
 (392330 392711)
 user= (time (answer 50))
 Elapsed time: 6357.131423 msecs
 392849

 When I try to time 'map' it seems to return right away.  How do I time
 the full two executions of 'answer'?

 




-- 
--
kyle.bur...@gmail.comhttp://asymmetrical-view.com/
--

--~--~-~--~~~---~--~~
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
Note that posts from new members are moderated - please be patient with your 
first post.
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
-~--~~~~--~~--~--~---



Re: New and stuck ??

2009-06-07 Thread Kyle R. Burton

I think your ls showed it, the jar name is clojure-1.0.0.jar, so the
java -cp argument should point to that instead:

  java -cp clojure-1.0.0.jar clojure.lang.Repl


Kyle

On Sat, Jun 6, 2009 at 6:17 PM, darrell dgalli...@gmail.com wrote:

 Any ideas ?
 Mac OS-X

 ~/Downloads/clojure_1.0.0$ java -cp clojure.jar clojure.lang.Repl
 Exception in thread main java.lang.NoClassDefFoundError: clojure/
 lang/Repl

 ~/Downloads/clojure_1.0.0$ java -cp clojure.jar /clojure.main
 Exception in thread main java.lang.NoClassDefFoundError: /clojure/
 main

 ~/Downloads/clojure_1.0.0$ ls
 build.xml         epl-v10.html      pom.xml           src
 clojure-1.0.0.jar pom-template.xml  readme.txt        svninfo.txt

 ~/Downloads/clojure_1.0.0$ java -version
 java version 1.5.0_16
 Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_16-
 b06-284)
 Java HotSpot(TM) Client VM (build 1.5.0_16-133, mixed mode, sharing)

 -= Darrell

 




-- 
--
kyle.bur...@gmail.comhttp://asymmetrical-view.com/
--

--~--~-~--~~~---~--~~
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
Note that posts from new members are moderated - please be patient with your 
first post.
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
-~--~~~~--~~--~--~---



Re: ICFP 2009

2009-06-07 Thread Andrew Wagner
Just an update on this thread - it turns out my wife and I are out of town
at a wedding the weekend of the contest this year, so if anyone wants to
organize a clojure team, don't depend on me to organize it. Good luck!

On Thu, Apr 23, 2009 at 1:34 PM, Jason Wolfe jawo...@berkeley.edu wrote:


 I'm interested, although I'm not sure if I'll be around that weekend.
 I've done quite well in past TopCoder-style contests (where I've had
 to use Java); it would be fun to do a competition in Clojure.

 -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
Note that posts from new members are moderated - please be patient with your 
first post.
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
-~--~~~~--~~--~--~---



Re: VimClojure v2.1.1 is released

2009-06-07 Thread Meikel Brandmeyer

Hi,

Am 07.06.2009 um 14:26 schrieb e:

if someone just has a vimclojure set up for mac/tiger (and one for  
Windows) that can somehow be bundled, I'd be interested.  I still  
haven't settled into any sort of reliable/intuitive environment for  
developing in clojure -- it's by far the biggest hurdle to everyone  
I know trying to get into it.


Please keep in mind: VimClojure does not claim
to be an intuitive environment for Clojure per se.
It tries to be intuitive for *Vim* users. If you weren't
exposed to vim before, you will probably have
a hard time getting started.

Similar applies to emacs+SLIME. Also ClojureBox
doesn't change that in my opinion. At a first look
you might have a quick start, but then still there
is the emacs hiding underneath. And no, I don't
think, that emacs is more intuitive than vim...

Netbeans and Eclipse (and probably IntelliJ) finally
aren't masters of Intuition also.

So what a intuitive environment is, mostly depends
on your background. You are a Java hacker and
grok Netbeans? Choose enclojure! You hacked the
Linux kernel with Vim? Choose VimClojure! You
have a CL background and are a SLIME guru?
Well, choose emacs.

If non of the above applies, you probably have to
take the pill and learn one the environments. If you
just want to get started with Clojure, use a simple
text editor of your liking and a repl running in the
shell/command prompt window. This works quite
well and it forces you to think about the namespace
structure etc. Friction caused by not-knowing the
environment almost vanishes.

Claiming that not having a full-fledged environment
stops someone from using the language is a lame
excuse. Neither Perl nor Python nor pick-your-lang
had a full-fledged env two years after first public
appearance. Still people managed to develop using
them.

That said, I think the current fauna of environments
for Clojure is very rich. Each fills its own niche.

Sincerely
Meikel



smime.p7s
Description: S/MIME cryptographic signature


Re: New and stuck ??

2009-06-07 Thread darrell

OK, embarrassing

Thanks, I was caught wishing to see a wow fun demo, without thought on
my part.

-= Darrell

On Jun 7, 10:13 am, Kyle R. Burton kyle.bur...@gmail.com wrote:
 I think your ls showed it, the jar name is clojure-1.0.0.jar, so the
 java -cp argument should point to that instead:

   java -cp clojure-1.0.0.jar clojure.lang.Repl

 Kyle


--~--~-~--~~~---~--~~
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
Note that posts from new members are moderated - please be patient with your 
first post.
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
-~--~~~~--~~--~--~---



Re: VimClojure v2.1.1 is released

2009-06-07 Thread Emeka
If you
just want to get started with Clojure, use a simple
text editor of your liking and a repl running in the
shell/command prompt window.

Well, that's what I have done. Now I am looking for something else. And
because I have flirted with vi before, and I am somehow thinking that
learning vim would be a great experience :). But I am not yet able to get
vimclojure kicking. That's why I have been appealing for help since. And it
took Meikel three weeks to make out time to talk to me. That shows that vim
learning curve is indeed steep!

Regards,
Emeka

--~--~-~--~~~---~--~~
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
Note that posts from new members are moderated - please be patient with your 
first post.
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
-~--~~~~--~~--~--~---



Re: VimClojure v2.1.1 is released

2009-06-07 Thread e
thanks.  I do grok, vim.  the other point is less about what to do once it
is all set up ... it's that setting up is a multi-step hurdle.  That's what
has been prohibitive for folks.  The risk is sinking the time and ending up
at some sort of dead end.  For me, i had to hack like crazy, for example to
get up through the the rlwrap point in one set of instructions.  seems
simple enough but compiling all the dependencies was a killer... required
though in my case -- ports not working.  So I was pretty much out of steam
after 8 hours just as I was seeing all the VimClojure instructions.  You are
all right that it is a bunch of whining on my part, but remember that it's
not just me.  I represent a demographic.

I agree that all the progress being made is awesome.

was mostly asking if that piece happened to have been done yet . . . . a vim
analogue of clojurebox for Windows and Mac.

On Sun, Jun 7, 2009 at 10:43 AM, Meikel Brandmeyer m...@kotka.de wrote:

 Hi,

 Am 07.06.2009 um 14:26 schrieb e:

  if someone just has a vimclojure set up for mac/tiger (and one for
 Windows) that can somehow be bundled, I'd be interested.  I still haven't
 settled into any sort of reliable/intuitive environment for developing in
 clojure -- it's by far the biggest hurdle to everyone I know trying to get
 into it.


 Please keep in mind: VimClojure does not claim
 to be an intuitive environment for Clojure per se.
 It tries to be intuitive for *Vim* users. If you weren't
 exposed to vim before, you will probably have
 a hard time getting started.

 Similar applies to emacs+SLIME. Also ClojureBox
 doesn't change that in my opinion. At a first look
 you might have a quick start, but then still there
 is the emacs hiding underneath. And no, I don't
 think, that emacs is more intuitive than vim...

 Netbeans and Eclipse (and probably IntelliJ) finally
 aren't masters of Intuition also.

 So what a intuitive environment is, mostly depends
 on your background. You are a Java hacker and
 grok Netbeans? Choose enclojure! You hacked the
 Linux kernel with Vim? Choose VimClojure! You
 have a CL background and are a SLIME guru?
 Well, choose emacs.

 If non of the above applies, you probably have to
 take the pill and learn one the environments. If you
 just want to get started with Clojure, use a simple
 text editor of your liking and a repl running in the
 shell/command prompt window. This works quite
 well and it forces you to think about the namespace
 structure etc. Friction caused by not-knowing the
 environment almost vanishes.

 Claiming that not having a full-fledged environment
 stops someone from using the language is a lame
 excuse. Neither Perl nor Python nor pick-your-lang
 had a full-fledged env two years after first public
 appearance. Still people managed to develop using
 them.

 That said, I think the current fauna of environments
 for Clojure is very rich. Each fills its own niche.

 Sincerely
 Meikel



--~--~-~--~~~---~--~~
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
Note that posts from new members are moderated - please be patient with your 
first post.
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
-~--~~~~--~~--~--~---



Re: New and stuck ??

2009-06-07 Thread Kevin Downey

the new entry point is clojure.main

java -cp clojure.jar clojure.main ;no slash, with the corrent jar name

java -cp clojure.jar clojure.main --help

will print a nice help message


On Sun, Jun 7, 2009 at 8:20 AM, darrelldgalli...@gmail.com wrote:

 OK, embarrassing

 Thanks, I was caught wishing to see a wow fun demo, without thought on
 my part.

 -= Darrell

 On Jun 7, 10:13 am, Kyle R. Burton kyle.bur...@gmail.com wrote:
 I think your ls showed it, the jar name is clojure-1.0.0.jar, so the
 java -cp argument should point to that instead:

   java -cp clojure-1.0.0.jar clojure.lang.Repl

 Kyle


 




-- 
And what is good, Phaedrus,
And what is not good—
Need we ask anyone to tell us these things?

--~--~-~--~~~---~--~~
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
Note that posts from new members are moderated - please be patient with your 
first post.
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
-~--~~~~--~~--~--~---



Re: VimClojure v2.1.1 is released

2009-06-07 Thread Meikel Brandmeyer

Hi,

Am 07.06.2009 um 19:13 schrieb e:

So I was pretty much out of steam after 8 hours just as I was seeing  
all the VimClojure instructions.  You are all right that it is a  
bunch of whining on my part, but remember that it's not just me.  I  
represent a demographic.


The VimClojure instructions really boil down
to building the jar and installing the Vim plugin.
The normal way of extract the zip into .vim
doesn't work because of the extra contents,
which I - personally - don't want in my .vim.
Having a local.properties is the only solution
I came up with, which was reasonably simple.

Similar for the contorted setup for the clojure.jar:
ant somehow does not honor CLASSPATH. So
the user has to specify the clojure.jar location
manually. Tips from ant gurus appreciated.

Note: if you don't provide a local.properties file
Ivy is used. Then this is a non-issue, because
the clojure.jar and the necessary parts of contrib
are downloaded automatically.

I just learned about user.home. So I can simplify
also the .vim installation of the plugin.

was mostly asking if that piece happened to have been done  
yet . . . . a vim analogue of clojurebox for Windows and Mac.


I can try to do a ClojureBall MacVim. Hmm...
Never done that before. Anyone with experience
for Windows?

Sincerely
Meikel



smime.p7s
Description: S/MIME cryptographic signature


Re: VimClojure v2.1.1 is released

2009-06-07 Thread Meikel Brandmeyer

Hi,

Am 07.06.2009 um 17:41 schrieb Emeka:


And it took Meikel three weeks to make out time to talk to me.


Huh? Did I miss something?

Sincerely
Meikel



smime.p7s
Description: S/MIME cryptographic signature


Multimethods derive

2009-06-07 Thread Peter Salvi

Hi,

I would like to use multimethods by dispatching on keys of the
variables (maps)
in a way that I sometimes have constraints on only some of the
arguments.

In common lisp I would say

(defgeneric foo (a b))
(defmethod foo ((a bar) b) ...)
(defmethod foo (a (b baz)) ...)
(defmethod foo ((a bar) (b baz)) ...)

This would mean that I have also defined methods for calls when (for
example)
`a' is an instance of `bar' and `b' of anything but `baz'. How can I
achieve
something like this with multimethods?

I could define a relationship like

(derive :bar :anything)
(derive :baz :anything)

and then do

(defmulti foo (fn [a b] [(:somekey1 a) (:somekey2 b)]))

with

(defmethod foo [:bar :anything] [a b] ...)
(defmethod foo [:anything :baz] [a b] ...)
(defmethod foo [:bar :baz] [a b] ...)

This seems to do the trick... but is this really the way to do it?

If it is, it would be very useful to have something that is the
ancestor of
everything (like T in common lisp).

Thanks,

Peter

--~--~-~--~~~---~--~~
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
Note that posts from new members are moderated - please be patient with your 
first post.
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
-~--~~~~--~~--~--~---



Re: Multimethods derive

2009-06-07 Thread Stuart Sierra

On Jun 7, 7:46 pm, Peter Salvi salvipe...@gmail.com wrote:
 (defmethod foo [:bar :anything] [a b] ...)
 (defmethod foo [:anything :baz] [a b] ...)
 (defmethod foo [:bar :baz] [a b] ...)

 This seems to do the trick... but is this really the way to do it?

This looks reasonable.

 If it is, it would be very useful to have something that is the
 ancestor of everything (like T in common lisp).

This has been thought about, at least: http://clojure.org/todo
I think the question is... what should the universal ancestor be?  For
classes, it's java.lang.Object.  But derive allows you to create
relationships outside the Java class hierarchy.  So for now, defining
your own root ancestor is the way to proceed.

-Stuart Sierra
--~--~-~--~~~---~--~~
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
Note that posts from new members are moderated - please be patient with your 
first post.
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
-~--~~~~--~~--~--~---



Re: What books have helped you wrap your brain around FP and Clojure?

2009-06-07 Thread Stuart Sierra

On Jun 6, 7:12 am, Robert Campbell rrc...@gmail.com wrote:
 Going beyond the language-specific Programming Clojure book, what
 other books have best helped you make the (sometimes mind-bending)
 transition from OOP thinking to FP thinking?

Practical Common Lisp, on the web at http://gigamonkeys.com/book/
Clojure borrows the good bits of CL.

SICP is available online too, http://mitpress.mit.edu/sicp/

-Stuart Sierra
--~--~-~--~~~---~--~~
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
Note that posts from new members are moderated - please be patient with your 
first post.
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
-~--~~~~--~~--~--~---



Re: VimClojure v2.1.1 is released

2009-06-07 Thread e
 I can try to do a ClojureBall MacVim. Hmm...
 Never done that before. Anyone with experience
 for Windows?


That'd be awesome. assume the user doesn't even have vim.  they just have
jdk. ... and they only care about vim for clojure.  Well, I'd want to
eventually integrate with svn and git, but I suppose folks just drop to a
shell for that stuff, typically.

--~--~-~--~~~---~--~~
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
Note that posts from new members are moderated - please be patient with your 
first post.
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
-~--~~~~--~~--~--~---



Re: Threadring Benchmark

2009-06-07 Thread Parth

So I got a chance to do some tweaks to the clojure code
and run the benchmark. I also used the approved (not alternative)
version of java code for comparison.
I must say I am impressed with the clojure agent performance.

The previous implementation results for 20,000,000 hops was:
java: 27.14 sec, 92% cpu
scala: 190.78 sec, 183% cpu
clojure: 215.26 sec, 134% cpu

The new results are:
java: 33.56 sec, 94% cpu
scala: 191.08 sec, 177% cpu
clojure: 77.01 sec, 91% cpu

The tweaks to clojure code were minor. Basically,
coercing hops to (int hops) and using (neg? hops) instead
of =.

Detailed Log: http://gist.github.com/125614
Updated Clojure Code: http://gist.github.com/125615
Jave Code: 
http://shootout.alioth.debian.org/u32q/benchmark.php?test=threadringlang=javaid=4
Scala Code: 
http://shootout.alioth.debian.org/u32q/benchmark.php?test=threadringlang=scalaid=1

Regards,
Parth

On Jun 6, 2:39 pm, Parth parth.malwan...@gmail.com wrote:
 On Jun 6, 11:44 am, Sean Devlin francoisdev...@gmail.com wrote:

  This problem came up on the mailing list recently:

 http://groups.google.com/group/clojure/browse_thread/thread/5e0c078d0...

  You might want to compare your code to what was done here, but at a
  glance the implementations are similar.

  You provide relative speed comparisons (Such and such is %
  better...).  Would you be able to share absolute times as well?  I'm
  just curious at this point.

  Sean

 For some reason the google spreadsheet link provided in
 my original mail requires users to login for viewing.
 The same numbers are available in this published
 google spreadsheet (hopefully without login).

 http://tinyurl.com/ofhync

 Regards,
 Parth



  On Jun 6, 12:41 am, Parth Malwankar parth.malwan...@gmail.com wrote:

   Hello,

   In order to understand the agent model of Clojure
   better I wrote the alioth shootout threadring benchmark [1].
   I ran some tests to compare it with the Java and Scala
   implementation [2, 3] which I picked from the published
   benchmarks.

   The clojure code can be found here:http://gist.github.com/124688

   The benchmark from my two core 1.7GHz pentium system
   (ubuntu 9.04) w/ 1GB RAM can be found 
   here:http://spreadsheets.google.com/ccc?key=rQLD6jgTTV5OqXwHdXtrTyg

   In summary, scala implementation is 6.34x times slower than
   java, clojure is 7.8x. Avg CPU consumption is 93.3% for java and
   179.2% and 131.34% for scala and clojure respectively.

   I thought of sharing this in case others are interested.
   As this is my first program using clojure agents I would appreciate
   any
   comments on improving the Clojure implementation (or in case
   there are any bugs).

   Thanks.
   Parth
   PS: For the Java implementation I happen to pick the interesting
   alternate programs (Java 6 -server #5) but it was already quite
   late in the cycle when I realized that. So the Java numbers are
   probably better than the other java implementations.

   [1]http://shootout.alioth.debian.org/u32q/benchmark.php?test=threadring;...
   [2]http://shootout.alioth.debian.org/u32q/benchmark.php?test=threadring;...
   [3]http://shootout.alioth.debian.org/u32q/benchmark.php?test=threadring;...
--~--~-~--~~~---~--~~
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
Note that posts from new members are moderated - please be patient with your 
first post.
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
-~--~~~~--~~--~--~---