On Apr 1, 11:41 am, Chanwoo Yoo <chanwoo....@gmail.com> wrote:
> Hello. Yesterday, I talked with a representative of a publisher about
> a translation of Lisp books. There are books about Ruby, Lua, Erlang,
> and Groovy in South Korea, but there is no book about Lisp except
> SICP. So he is considering printing the first Lisp book in South
> Korea. We talked about 'Programming Clojure', 'ANSI Common Lisp', and
> 'Practical Common Lisp'. I told him that I slightly prefered
> 'Programming Clojure' to others because of Clojure's support for
> concurrency and java interoperability. I said that the strong points
> of Clojure would make programmers of main stream languages have
> interests in Lisp. And he asked me questions like follows.
>
> 1. Has Clojure become stable?
> He is afraid that the publishing of 'Programming Clojure' would be
> meaningless if Clojure take significant changes after the publishing.
> We know it will change. But the degree is the matter.

Fully lazy sequences was a fairly dramatic internal change, that only
took a few weeks before all the existing libraries had stabilized.  I
know that for my own code it was mostly a search and replace (people
who aggressively used lazy-cons had slightly more work). I think Rich
is pretty good about not changing interfaces.  I'm not sure what else
Rich wants to get in before 1.0, but whatever changes are made, I
believe they will mostly be evolutions and not dramatic changes to the
interface, right? ;)

>
> 2. Could I get any benchmarking data about the performance of Clojure
> and Java?
> I read that Clojure can generate code as fast as Java in 'Programming
> Clojure'. But he worries whether Clojure is slow like Groovy. Could I
> get data about performance comparisons between Clojure and Java on
> several algorithms?

>From the kinds of posts that come up, Clojure is very competitive with
Java in real world contexts. It's definitely the fastest language I've
ever used that is as dynamic as it is.  The only time Clojure seems to
fall behind pure Java is loop heavy operations on Java primitives, but
again, because Clojure integrates so easily with Java, you can
implement the slow parts in Java if you must.  The speed at which you
can produce clear clean code in Clojure vs Java I think more than pays
off for the rare performance differences.

>
> 3. Clojure can use Java libraries. Common Lisp can use C/C++
> libraries. Is it possible to say Clojure has strong points to Common
> Lisp in the power of libraries?

Definitely. But as people have mentioned, since you're not crossing an
FFI the integration is much, much better. One argument for Clojure
over Common Lisp (and Common Lisp is cool) is that Clojure is not just
a modernized Lisp, it is a modernized language period. It deeply
integrates concurrency-  I believe any new language must address this
to be taken seriously from now on- multicore is clearly the way of the
future and other languages require you to find libraries and change
your programming style. Clojure comes out of the box concurrency ready
from its fundamental design.  This was the deal sealer for me.

>
> All these questions are not easy to answer for me. I think I should
> give him the object information. So I hope that I get opinions from
> the community.
--~--~---------~--~----~------------~-------~--~----~
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