changes for next PETSc release

Matthew Knepley knepley at gmail.com
Mon Mar 17 13:27:05 CDT 2008


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.

  Matt

>  On Mar 17, 2008, at 12:59 PM, Matthew Knepley wrote:
>
>  > On Mon, Mar 17, 2008 at 12:27 PM, Barry Smith <bsmith at mcs.anl.gov>
>  > wrote:
>  >>>> 2) properly name-space PETSc by putting a Petsc in front of all
>  >>>> PETSc
>  >>>> objects, function names etc
>  >>>>     (this will require changing a few names also to keep them below
>  >>>> the 32 character limit). This will
>  >>>>     be very painful change for some users who are not comfortable
>  >>>> ever changing code, hence I hesitate
>  >>>>     to do it, but it is the right thing to do and should have been
>  >>>> done originally.
>  >>>
>  >>> I guess I still do not see the need for this. NIMROD is a not a
>  >>> sufficient
>  >>> driver in my mind.
>  >>
>  >>    You are an elitist who thinks that important ideas can only come
>  >> from important/smart people. This I disagree strongly with, one
>  >> should
>  >> look everywhere, even at the local dump, for good ideas. NIMROD is
>  >> not the driver, it is merely the spark.
>  >
>  > I will be more specific. I think there is no good idea connected
>  > with this
>  > requirement of NIMROD. In fact, I think it is a very very bad idea.
>  > They are
>  > using a language with namespaces (F90) but they ignore them. Then they
>  > wonder why uses a product from a language without namespaces (C) they
>  > have a problem. The wrong strategy is to do something complicated in
>  > the
>  > deficient language. The right thing to do is something easy in the
>  > language
>  > with support.
>  >
>  > Why can't we just do an F90 binding with namespaces? That would fix
>  > NIMROD
>  > and not disrupt the community who has not complained (and who is much
>  > much bigger).
>  >
>  >>> If we really want namespaces, use a real language that
>  >>> has namespaces. There are plenty. If we are still using C, I say we
>  >>> stick
>  >>> with the old division. The imposition of this much pain on the
>  >>> overwhelming
>  >>> majority of users seems unjustified.
>  >>
>  >>    You seem to be saying we should stick with a bad decision I made
>  >> many years ago, just because it is painful to change. When did you
>  >> suddenly become conservative?
>  >
>  > No, I am saying that the fix is crap because it is complicated,
>  > entails
>  > enormous changes to the code, and is ugly. I think the correct fix is
>  > to use nice mechanisms in languages that support them, like C++.
>  > I am completely against forcing weak language mechanisms to do
>  > complicated things, which is why I hate all those template tricks.
>  >
>  > Also, we should look at history. We have made mistakes in the past
>  > when changing the interface (KSPSolve() with no arguments) which
>  > were painful. I want to make sure what we choose to do is as simple
>  > and non-painful as possible.
>  >
>  >   Matt
>  >
>  > --
>  > What most experimenters take for granted before they begin their
>  > experiments is infinitely more interesting than any results to which
>  > their experiments lead.
>  > -- Norbert Wiener
>  >
>
>



-- 
What most experimenters take for granted before they begin their
experiments is infinitely more interesting than any results to which
their experiments lead.
-- Norbert Wiener




More information about the petsc-dev mailing list