comp.lang.ada
 help / color / mirror / Atom feed
From: "E. Robert Tisdale" <edwin@netwood.net>
Subject: Re: The Ada Scalar, Vector, Matrix and Tensor arithmetic library?
Date: 1999/12/05
Date: 1999-12-05T00:00:00+00:00	[thread overview]
Message-ID: <3849E314.6281FC6D@netwood.net> (raw)
In-Reply-To: 82c7mu$a2g1@news.cis.okstate.edu

David Starner wrote:

> On Sat, 04 Dec 1999 21:59:13 +0000,
> E. Robert Tisdale <edwin@netwood.net> wrote:
>
> > No one actually cares how matrix libraries are implemented
> > except that the implementation should be optimized
> > appropriately for the target platform and problem domain.
>
> Sure, but the way of doing that for Ada
> is most likely not a wrapper around a C++ library.
> It's more likely to be use inline generics.

Who said anything about a C++ library?
The library might be implemented in Ada, Fortran, C, assembler
or any combination of programming languages.
All Ada applications programmers care about
is what they should write to access the library.

> > Only the Application Programmer's Interface (API)
> > is really important.
> > If the application programmer uses a standard API,
> > it should be possible to port the application to any platform
> > where there is a library that supports the standard API.
>
> But there is no standard API for this in Ada.
> So why worry about it?
> One way to get a standard API
> is to create a library that implements a clean API,
> and get it used to the point that anything trying to replace it
> will have to implement its API.

But it is a very bad way to get a standard API.
It's better to design an API that liberates library developers
to implement the library as they see fit.

> > The API for each existing Ada library was designed
> > around a particular implementation which precludes
> > any other implementation.
>
> Huh? Your statement makes me start thinking
> about the multitude of standards
> that originally were a particular implementation -
> UNIX, C, Fortran, recently OpenSSH and OpenPGP, etc.
> There is no reason you can't take any API
> and design a implementation around it.

Sure you can if you have unlimited resources
and don't care about performance.
But most programmers who write numerical applications
expect their code to run as fast and efficiently as possible.

E. Robert Tisdale <edwin@netwood.net>







  reply	other threads:[~1999-12-05  0:00 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1999-12-04  0:00 The Ada Scalar, Vector, Matrix and Tensor arithmetic library? E. Robert Tisdale
1999-12-04  0:00 ` David Starner
1999-12-04  0:00   ` David Starner
1999-12-04  0:00     ` E. Robert Tisdale
1999-12-04  0:00       ` David Starner
1999-12-05  0:00         ` E. Robert Tisdale [this message]
1999-12-05  0:00           ` David Starner
1999-12-05  0:00             ` David C. Hoos, Sr.
     [not found]               ` <01bf3f36$43ebbd50$022a6282@dieppe>
1999-12-05  0:00                 ` E. Robert Tisdale
1999-12-05  0:00                   ` David Starner
1999-12-06  0:00                     ` E. Robert Tisdale
1999-12-06  0:00                       ` David Starner
     [not found]                 ` <01bf3f36$c5ad0e20$022a6282@dieppe>
1999-12-05  0:00                   ` Greg Martin
1999-12-05  0:00                 ` David Starner
1999-12-05  0:00                   ` David C. Hoos, Sr.
1999-12-06  0:00                     ` E. Robert Tisdale
1999-12-07  0:00                   ` SIMD extensions in Ada :-(. Was: " Vladimir Olensky
1999-12-07  0:00                     ` Gautier
1999-12-05  0:00             ` E. Robert Tisdale
1999-12-06  0:00               ` Robert A Duff
1999-12-06  0:00                 ` E. Robert Tisdale
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox