> It's definitely not necessary to implement the bulk of your code in Java to
> get performance. On the other hand, getting performance out of Clojure can
> be tricky.

Well, yeah, that's the thing- getting maximal performance out of
clojure seems to require a degree of expertise and patience that I
certainly don't possess and that seemingly few, in practice, do:  I
tend to be skeptical of claims that clojure can *always* be made to
run as fast as equivalent java code when much more proficient
programmers than myself struggle to get 1/6th of equivalent speed...
http://gnuvince.wordpress.com/2009/05/11/clojure-performance-tips/

...1/6th native speed is fine for my present purposes, but I don't
want to rewrite my vertex/normal transforms or A* pathfinding in
clojure unless and until I'm a lot more confident of my ability to
tease out performance.

> NetBeans, which I use, does better at this. You have to restart the REPL
> after any change to Java classes, which is a nuisance, but you don't have to
> restart the IDE or muck with anything else (project libraries, classpath).
> Even if you have separate projects and some are dependencies of others, and
> all are undergoing active development, you just have to reboot the REPL
> after changing Java code. Changing Clojure code, even in a separate project
> that's a dependency of your main project, can typically be handled with a
> load-file of the changed file. Only if your refactoring moves a Clojure
> function or other object from one namespace to another (same or different
> project) do you generally have to restart the REPL, since it won't let you
> intern a name in a package that imports the same name from another one, and
> uninterned symbols won't go away. It's a good idea to occasionally restart
> your REPL anyway to clear out cruft and avoid having a running image that's
> become dependent on something that isn't in your code base, and also to find
> anywhere where you are missing forward-declarations.

I actually couldn't get the Netbeans plugin REPL to run at all, but
that was a couple of months back... I might try again with the (more
recent?) version.  That does sound like a very handy dev system.
--~--~---------~--~----~------------~-------~--~----~
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