On Fri, Apr 12, 2013 at 12:53 AM, Michael Marcin
On 4/12/13 12:44 AM, Jeffrey Lee Hellrung, Jr. wrote:
On Thu, Apr 11, 2013 at 9:48 PM, Michael Marcin
wrote:
Formalizing these shared aspects into concepts and creating an elegant interface with multiple backend bindings is what I would hope a boost physics library would accomplish.
Hmmm...this sounds like you have something similar to Boost.Multiprecision in mind. Is that accurate?
I've not used Multiprecision but looking over the intro docs yes very much so. Also Boost.MPI is very similar to what I'm talking about.
Specifically from the MPI docs.
Boost.MPI is not a completely new parallel programming library. Rather, it is a C++-friendly interface to the standard Message Passing Interface (MPI), the most popular library interface for high-performance, distributed computing. MPI defines a library interface, available from C, Fortran, and C++, for which there are many MPI implementations. Although there exist C++ bindings for MPI, they offer little functionality over the C bindings. The Boost.MPI library provides an alternative C++ interface to MPI that better supports modern C++ development styles, including complete support for user-defined data types and C++ Standard Library types, arbitrary function objects for collective algorithms, and the use of modern C++ library techniques to maintain maximal efficiency.
Obviously not exactly the same. MPI is standardized and there is no standard physics api that I'm aware of.
Hmmm...I guess 2 concerns I have are 1) What is lacking in present APIs that a Boost-style interface would provide? and 2) The design itself of such a system could easily be a summer's work, much less any start on the implementation, so I think it might be hard to sufficiently limit the scope of this project to within a summer while still defining a coherent result. - Jeff