Hi Gary,

I appreciate your comments and have no interest in a "best language" war as well. There are certainly many others that are quite interested in that and we can leave it to them.

I guess my bottom line is that for me Java works very well. I do write compute intensive applications, often using the Colt library ( http://dsd.lbl.gov/~hoschek/colt/ ) and for my applications I find the performance very good. There are certainly circumstances where performance can suffer, but generally find that for my use these do not outweigh the benefits I find in using Java.

cheers,

Bruce


On May 12, 2005, at 12:00 PM, [EMAIL PROTECTED] wrote:

Just a couple of comments that you can take for whatever they are worth, and not intended to start a "best language" war:

I can well imagine that relatively direct Java access to Metakit databases would be welcomed by a significant number of Java developers. �I encourage this effort. �There is more than a small possibility that we may need to implement some applications in Java, and I would be very happy to be able to use Metakit in that event. �Java has its place, and it is a very large place in web environments and web-delivered applications.

However, in my experience, for seriously compute-intensive applications or for applications requiring computing over substantial amounts of data, it is not the implementation path of choice. �Performance is seriously lacking. �I could give a few examples, but (again in my experience with both internally developed applications and with some very good commercial applications implemented as native Java apps), this can be a serious show-stopper.

To characterize Java performance as "really very good" is, of course, a relative characterization. �It is very often "good enough" for its intended use, and it is very often good enough that a user of a particular app wouldn't notice the difference if it were reimplemented in C. �But for other applications, this will not be the case. �I assure you, it will not.

Your observation that many Metakit uses are via a scripting interface is correct but, in this context, not compelling . �It is not the speed of the *interfaces* that is the issue since very little time is spent in the interface code. �Even then (in the most common case for Python, for example) the underlying GUI code (in such packages as wxWidgets and PyQT) or database code (BSDDB or Metakit) is in C or C++. �So this really doesn't suggest anything about the usability of a Java implementation. �The whole idea of building these applications in scripting languages is to use that as a relatively thin layer to take advantage of the high-performance libraries that are used under the covers. �You would lose this with a pure Java implementation.

I've recently seen a beautifully designed and implemented system for interactive gene expression analysis written by a colleague. �He loves Java -- for GUI purposes. �The GUI is implemented in C# (which I take to be the (im)moral equivalent of Java), but all the work (statistical analysis, processing of data, graphing, etc.) is done in C. �He said he would not have even attempted to do that in Java since the performance of the resulting system would have rendered it unusable. �My concern is that a pure Java implementation of Metakit would have the same result -- and that would be a shame because it would limit its usability and use. �It just looks to me as though there is too much to lose and nothing obvious to gain.


<unknown.jpg><mime-attachment>_____________________________________________
Metakit mailing list - [email protected]
http://www.equi4.com/mailman/listinfo/metakit

Bruce A. Johnson, President
One Moon Scientific, Inc.
839 Grant Ave.
Westfield, NJ 07090

Phone 908 517-5105
Fax 908 517-5107
Email [EMAIL PROTECTED]
Web www.onemoonscientific.com
_____________________________________________
Metakit mailing list  -  [email protected]
http://www.equi4.com/mailman/listinfo/metakit

Reply via email to