On Sat, Feb 11, 2012 at 10:09 AM, Dmitri Gribenko <[email protected]>wrote:

> Hello,
>
> === Objective ===
> Implement a set of annotations for MPI libraries and a diagnostic for
> clang that checks that specified buffer type matches the passed
> MPI_Datatype.
>
> === Background ===
> Many MPI functions take a void* `buffer' and an MPI_Datatype (like
> MPI_INT, MPI_LONG etc) that describes how to send/receive that buffer.
>  For example,
>
> int MPI_Send(void *buf, int count, MPI_Datatype datatype, int dest,
>    int tag, MPI_Comm comm);
>

Before I look in much closer detail at this proposal, I'd really like to
understand why the solution to the lack of type safety in this C API isn't
to use a C++ API.

We have languages that provide strong type safety guarantees and high
efficiency. It would be a shame to design and layer a type safety system on
top of a C API like this rather than use those languages.

This isn't a hypothetical either, we have such C++ interfaces:
http://www.boost.org/doc/libs/1_48_0/doc/html/mpi.html
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to