OONSTD: to early for standards?

Jan Galkowski (jan@solstice.digicomp.com)
Tue, 1 Jul 1997 12:02:42 -0400


:> The aim of the list is to discuss these questions:
:>
:> * Are standard interfaces for scientific computing components in C++
:> a good idea?
:>

: Yes. However the issues in "scientific computing" are exceedingly
:complicated and the number of numerically oriented people who deeply
:understand the issues in object oriented design are very limited.

: Now should be a time for experimentation and learning, not for focusing
:on premature standards. So, by all means, publish interfaces and
:discuss approaches, but I don't see how truly useful standards can
:be established for many years.

:> * If so, can we agree on what these standard interfaces should be?

: The numerical computing community is shockingly conservative. (Look
:at how many Fortran 77 supporters there are out there :-). Plus there
:is a strong resistence to using "libraries" rather then "rolling your
:own code".

Well, what constitutes this "numerical computing community" will affect
how large the use of libraries in it is. There is a big group of
people -- numerical analysts or not -- who use the LINPACK, LAPACK,
and the SIAM libraries, even putting aside for the moment those who
use them through devices like MATLAB.

: ...........I think we need a generational shift before real progress
:can be made.

In fact I believe a basic challenge is understanding the roles, means,
purposes, and needs of those who might use standardized packages. I am
proposing some kind of "consumer survey" for I think that the doing
of numerical work doesn't necessarily qualify one to know what's needed
in terms of a standard. Even if there aren't the resources to pull
such a thing off, the effort to try may be worthwhile: One learns a lot
trying even doing basic things like defining a sampling frame.

On that note, perhaps we should invite developers of highly successful
numerical packages, like MATLAB, PVWAVE, SAS, SPSS, STATISTICA, etc.
to share what they know of people's computing needs. Each of these
packages have, over the years, tending to provide more in situ support
for programming, and they have a stake in how standard packages
work out.

I'd also like to suggest that while object-oriented design using C++ as
an exemplar is fine, the strategy of implementation ought to be
applicable to other important standards, too. I'm thinking of Ada95,
both because of its importance in itself and because there are
significant communities of users who, for better or worse, need to
solve numerical problems there. I am also sceptical that the target
language -- as long as it supports an OO style -- matters a lot. We've
seen, for instance, a variety of codes implementing the algorithms in
NUMERICAL RECIPES for instance and these seemed to work fine.

: Barry Smith

Jan Theodore Galkowski,
developer, statistician,
Digicomp Research Corporation,

member,
the American Statistical Association,
the Union of Concerned Scientists.