Hi Michael,
> This looks really interesting. One thing I noticed, though, is that > the page links to "clojure.sourceforge.net" as the Clojure web site. > Although that does redirect to the correct place (clojure.org) it > could give people the false impression that Clojure is still hosted on > Sourceforge. (Yes, I know it's a Wiki, but it's easier to reply to > your message than to create yet another account on yet another web > site just to make one minor change.) Thanks, I've updated the links. > By the way, I've never used ImageJ, but would be interested to know > why you say it is "not what you'd call an industrial-strength > library". Because ImageJ's ij.jar became a library long after being just an application. There is no concept of MVC, and thus GUI classes are mixed with processing and controller constructs. What's worse, most plugins operate on the concept of the active image, which originally was the image contained on the selected image window--but any image on which one calls ".show()" will become the active image, which can happen anytime ... from any plugin, and different for each. Also, the sin of keeping unsafe internal state is committed in numerous places, particularly affecting the dialog's default values (static fields), which are then changed by subsequent instatiations of the dialog. The static fields are used directly in the execution of the plugin processes, resulting in very unsafe multithreading. All the above though doesn't affect the core data structures, neither the I/O (since about a year from now or so). In addition, all image processing is basically 2D: one can't resize an image 3D volume. There are stacks of 2D images, very easy to use, but they are not true 3D volumes neither are they processed as such. There's also support for 4D (3D+time) with hyperstacks, again an ad-hoc structure that is simply a long array of 2D images. Here are a few descriptions on the core ImageJ datastructures, at high, mid and low level of pixel operations: http://albert.rierol.net/imagej_programming_tutorials.html#ImageJ%20programming%20basics Some threading safety techniques are explained here: http://albert.rierol.net/imagej_programming_tutorials.html#Multithreaded%20programming%20for%20ImageJ There's a very active ImageJ malining list on the main ImageJ website, which answers to all questions: http://rsb.info.nih.gov/ij Hope that helped. Albert -- Albert Cardona http://albert.rierol.net --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---