changes for next PETSc release

Satish Balay balay at mcs.anl.gov
Mon Mar 17 13:45:27 CDT 2008


On Mon, 17 Mar 2008, Matthew Knepley wrote:

> On Mon, Mar 17, 2008 at 1:06 PM, Barry Smith <bsmith at mcs.anl.gov> wrote:
> >
> >     Fortran90 has namespaces??????
> 
> Not in the way I was thinking. Damn F90. Anyway, it looks like you
> can selectively use interface modules, so we might be able to get
> away with redundant names by just not using them together.

>  I jsut really hate the idea of putting "PETSc" in front of every
> word in the package.  It is really the ugliest thing I can imagine
> and will make programming that much more of a slog.

We already do this for lot of things. [this wasn't the case when we
  started]

- all petsc libraries now have a 'petsc' prefix.
- all configure flags have petsc prefix [this wasn't the case - when
we started].
- all petsc datatypes now have petsc prefix.

And wrt namesapcing, the correct thing to do is expand the namespace
to languages without it. [not ingore it].

For eg: All MPI rutines have 'MPI' name space. The way its implemented
is:

MPI::Comm_rank() - c++
MPI_Comm_rank()  - C,F77

[but just because c doesn't have namespace -they didn't decide to use
just Comm_rank() for c]

The biggest issue is: PETSc tries to use full names for functions, and
we usually exceed 32char limit on some machines. And additional 5
chars to each function name might tip us over this limit.


Satish




More information about the petsc-dev mailing list