I agree with all of this, which is why I said I think we need an
architecture more than an API. Todd's point 3) is especially
important. If you can get a "mature standard", then a standard may be
reasonable. The C++ language itself, for example, is being
standardized after years of use. The time seems right for this.
OTOH, I don't think I've seen a genuine "reuseable scientific library"
yet--not even one. So the concept of standardizing on scieintific
interfaces seems waaaaaaaaaaaaaaaaaaaaay premature to me.
On the positive side, there are lots of people interested in these
kinds of ideas, as witnessed by the many "frameworks" and "class
libraries" which are being developed at institutions around the world,
and mailing lists like this one, and conferences, etc. So I think the
time is right to be looking at these issues.
But (imo) we should focus first on learning the techniques, strategies
and idioms that promote the authorship of genuinely reuseable
scientific software. When this technology achieves some reasonable
level of maturity, /then/ we could think more directly about
specifically what a "standard interface to scientific software" should
look like or work like, etc.
-- Geoffrey Furnish email: furnish@lanl.gov LANL XTM Radiation Transport/POOMA phone: 505-665-4529 fax: 505-665-5538"Software complexity is an artifact of implementation." -Dan Quinlan