Mark,

I don't disagree with your message as a whole, but:

Once you start using mutable arrays and type hinting every single
variable, why aren't you just using Java?

The argument I've heard is this: there are two ways to get a fast program in a slow-by-default language.

The first is Python's way: write the whole thing in Python (high- level), find out the parts that are slow, then rewrite those in a different language (C). Now you need a C compiler, you need to build separately on each platform, and so on.

The second is Common Lisp's way: write the whole thing in un-annotated CL (high-level), find out the parts that are slow, then add annotations or make representational changes (lists => vectors, alists => hash-maps) to allow the compiler to make them fast.

The argument is that being able to use *the same language* to write anywhere on the spectrum from slow/succinct to fast/verbose is useful: no complex combined build system, no bridging between environments, iterative development, easier profiling, your code always works, etc.

If I can take one little part of my Clojure program and make it ugly like Java to get it as fast as Java, it's better than having to actually _use_ Java in a heterogeneous project.

-R

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

Reply via email to