Re: Woo hoo ... a whole new set of compiler headaches!! - Mailing list pgsql-hackers

From Andrew Dunstan
Subject Re: Woo hoo ... a whole new set of compiler headaches!!
Date
Msg-id 42693842.6070500@dunslane.net
Whole thread Raw
In response to Re: Woo hoo ... a whole new set of compiler headaches!! :)  ("Dave Held" <dave.held@arrayservicesgrp.com>)
List pgsql-hackers

Dave Held wrote:

>>-----Original Message-----
>>From: Alvaro Herrera [mailto:alvherre@dcc.uchile.cl]
>>Sent: Friday, April 22, 2005 12:06 PM
>>To: Tom Lane
>>Cc: Dave Held; pgsql-hackers@postgresql.org
>>Subject: Re: [HACKERS] Woo hoo ... a whole new set of compiler
>>headaches!! :)
>>
>>[...]
>>Why don't we rewrite Postgres in D?
>>
>>http://www.digitalmars.com/d/
>>
>>:-D
>>    
>>
>
>I see the smiley, but moving to C++ isn't just about switching
>to the latest fad language.  
>

No, it's about moving to the fad language about 2 generations back ...

>First of all, you would literally
>have to rewrite it to use D.  There would probably need to be
>very little work to make the Postgres codebase a conforming set
>of C++ programs (mostly renaming variables/types named 'class', 
>'virtual', 'bool', etc.).  Second, you can find a decent C++
>compiler on virtually every platform that has a C compiler.
>Third, C++ offers real advantages in type safety, exception
>handling, resource management, and even performance.
>  
>

Unless you did a major rewrite it's hard to see any great advantages. 
There are over 600,000 lines of code in Postgres by my rough count. The 
potential rewrite effort is enormous. A thorough job would probably 
consume a release cycle just on its own.

Also, "virtually every platform" isn't good enough - we have a number of 
oddballs in our supported list, and it would have to include at least those.

>Even doing something as simple as writing a stored procedure
>in C is somewhat awkward because of all the boilerplate casting
>that must be done.  I'm fairly certain that most of the macros
>in the stored procedure interface could go away if a C++ API
>were created.
>
>  
>

On the downside, some of us (including me) have much more experience in 
and ease with writing C than C++. I could certainly do it - I write 
plenty of Java, so OO isn't a closed book to me, far from it - but 
ramping up in it would take me at least some effort. I bet I'm not alone 
in that.

So this would not be cost-free - very far from it.

cheers

andrew


pgsql-hackers by date:

Previous
From: "Dave Held"
Date:
Subject: Re: Woo hoo ... a whole new set of compiler headaches!! :)
Next
From: Tom Lane
Date:
Subject: Bitmap scans vs. the statistics views