On Apr 15, 2012, at 10:34 AM, Jed Brown wrote: > On Sat, Mar 17, 2012 at 13:16, Jed Brown <jedbrown at mcs.anl.gov> wrote: > I have fixed the logging variables and a few others. The following > incantation will show you a list of the symbols that are not currently in a > "claimed" namespace (either directly or through bundling). These are arguably > already too promiscuous, but the symbols that this does not filter out should > probably be fixed. > > $ nm --print-file-name mpich-static/lib/libpetsc.a |sort -k 3 | grep ' > \(B\|D\|C\|T\) ' | grep -i -v ' > \(XXT\|XYT\|Xi\|TetGen\|Vec\|Mat\|Petsc\|KSP\|PC\|SNES\|DM\|TS\|PF\|IS\|AO\|Characteristic\|ClassPerf\|EventPerfLog\|EventRegLog\|spbas_\|f90array\|mpifcmb\|SPARSEPACK\|MPIU_\|MINPACK\|admf_\)' > > Why does PETSc use the MPIU_ prefix? MPICH2 uses it internally for "utility" > routines. Should that stuff become PetscMPI_ or similar? > > http://wiki.mcs.anl.gov/mpich2/index.php/Function_Name_Prefix_Convention
We use MPIU_XXX as a replacement for missing/broken/... MPI_XXX The reason they start with MPI is to indicate their very close relationship with their "true" MPI cousins. I think the natural replacement is PETSC_MPI_XXX, if we make this change then the "obvious" connection to MPI_XXX is weaker. But proper naming spacing does dictate we make this change. > > > Also, perhaps we should set up a board like this to highlight global naming > violations. How about just catching the bad name in the repository after someone pushes an objectionable name and installing a virus onto their machine that taunts them for it? > > http://www.mcs.anl.gov/research/projects/mpich2/todo/globsyms.htm