[bionet.software] G++ for comm. developers.

JRAMON@ccuam1.uam.es ("J. R. Valverde") (02/19/91)

Please, do not grant this for true, though I think it's quite accurate.

        I recently received a posting from info-gnu saying that FSF is
reconsidering their policy for GCC and G++ compilers. The point is that
they wnat their system the more widespread possible, and thei are now
considering making a modification in their Copyrights so that commercial
software developers could use their libraries as well and distribute the
software. I'm not too sure of the final terms, nor do I know if they have
finally re-arranged their copyrights, though I believe they already have.

        For more information, mail directly to them or ask in any of the
GNU forums.

        As for commercial C++ compilers. They exist. And not just translators.
I think that by now, most of us should know about Turbo-C++ and Zortech C++
at least. These allow for the development of code in the PC under MS-DOS and,
I seem to remember, Zortech also allowed other platforms. There is also a
C++ for the Mac.

        With respect to code generation. I've understood always from computer
scientists friends that code generation depends strongly on the compiler. A
good compiler shouldn't rely on the language. Methinks this is not fully
true for actual technology. What I suspect is that it will actually generate
more code (size) than good C.
        For instance, you can build a generic C stack package that receives
void pointers to store. You won't get any type-checking (as with almost any
traditional C program), but you'll have a single routine for all data types
requiring a stack instead of one for each. I have some of these libraries
that have proven very useful, fast and compact. And you only have to debug
the algorithm once!

        Final thought: if you can't use C++, use C with good programming
practices (learn Pascal first). If you can't use C (or are not willing to,
or it's not the appropriate tool), use any other high-level language. If not
now, it will be as fast in the future, and you won't have any headache. If
portability is an issue, do as with C: restrict yourself to the common
subset of the language (ever heard of portable parallel C code?)

        A good algorithm is worth any language indiosincracy. Scientists
must be devoted to developing new algorithms and expressing new ideas. While
they do it well and in an understandable manner, that's the only point.

                J. R. Valverde
              Dpt. of Biochemistry
           School of Medicine, UAM &
        Biomedical Research Institute
                Madrid - SPAIN