[GRASS5] Want GNU libavl ?
Frank Warmerdam
warmerdam at pobox.com
Thu Jan 24 11:32:55 EST 2002
David D Gray wrote:
> We could talk about this for ever, but it can only be put to the test
> when a developer comes up with a specific proposal with genuine merit
> for including or writing a component in C++ (or other language).
Folks,
I hardly want to be a proponent of "C++ ification" of GRASS; however, I
would like to see the GRASS build system attempt to identify a C++ compiler
that can be used (normally just g++ of course) and to support building C++
modules.
For the time being I think we should avoid using C++ in libraries but I
think we should open up the option of some programs being in C++.
For r.in.gdal I have used a C "wrapper" api over GDAL which is internal
a bunch of C++ classes. However, OGR, my vector library, has no such
C wrapper and I am not terribly inclined to write one. However, I would
like to write a vector import and export capability based on OGR for
GRASS and that program would have to be in C++.
Therefore, I propose that for GRASS 5.1 we open up the option of some
GRASS programs (hopefully non-essential ones) be written in C++. Hopefully
from this we will get a better sense of what portability problems we will
encounter with C++. Then in GRASS 5.2 we can consider allowing some C++
code in the core libraries.
Even then, I would discourage attempts to rewrite large chunks of code to
be C++ friendly just for the sake of it. In past projects I have found this
can lead to corruption of what had been a clean C library.
Even if we allow C++, we might want to place some restrictions on it. For
instance, I avoid all use of RTTI, exceptions and templates in GDAL to avoid
portability problems.
Best regards,
--
---------------------------------------+--------------------------------------
I set the clouds in motion - turn up | Frank Warmerdam, warmerdam at pobox.com
light and sound - activate the windows | http://pobox.com/~warmerdam
and watch the world go round - Rush | Geospatial Programmer for Rent
More information about the grass-dev
mailing list