Subject: 3 Q's re: Ansification, Make, Alpha

From: [email-masked]
Date: Mon, 18 Jan 93 00:46:47 -0800

Dear Postgres developers,

I don't mean to criticise, as I am very pleased to have Postgres to
play with, and perhaps these questions can be helpful:

Ansification:

	Why are you trying to do this in a way that will allow
	compilation by non-ANSI compilers?  Doesn't this compromise code
	quality and reduce the benefit that ANSI C can provide?  What
	platforms do you consider important that do not yet support an
	ANSI compiler?  Do any platforms of interest not at least have GCC?

Make:

	Why would you want to make Postgres dependent on
	Berkeley make? Has Berkeley make been ported to, and
	tested on, a wide variety of systems?  If not, why not
	use GNU make?

Alpha:

	If there are problems with DEC's cc for the Alpha, why
	not use GCC?  It may seem that I'm harping on using GNU
	tools and GCC, but I fail to see the virtue of ignoring
	the availability of a high quality compiler which runs on
	almost every current system and therefore reduces the
	platform idiosyncracies to a minimum.

_Greg

J. Greg Davidson	Institute for Software Research and Development
+1 (619) 452-8059       6231 Branting Street  San Diego, CA  92122  USA
 
[email-masked]					ucsd----+--vis
[email-masked]		 			nosc----|

	*****************************************************
	*   Member of the League for Programming Freedom.   *
	*   For more info, write to [email-masked]  *
	*****************************************************

---

From: [email-masked] (Dean Anderson)
Date: Tue, 19 Jan 93 10:50:20 EST

I cannot and would not speak for berkeley or the postgres group, but
it seems that you think gnu code is bug free and ansi is ideal.  Some

>> 	ANSI compiler?  Do any platforms of interest not at least have GCC?

If done properly, ansification does not have to break non ansi
compilers.  I would not recommend writing code that will not compile
using a non ansi compiler (or gcc -traditional).  Many operating
systems equate berkeley compatibility with k&r code.  Indeed, BSD Unix
is (was in 4.3) "defined" to be using k&r code.

>> 	tested on, a wide variety of systems?  If not, why not

Note the address, postgres.berkeley.edu.  Berkeley make is a very good
make. It has some features which will (likely) make life easier for
the postgres developers and the end builders.  Some vendors will not
ship gnumake.  Why not use it?

>> 	platform idiosyncracies to a minimum.

Actually, I believe that the alpha cc is gcc, ported to alpha. 

Writing portable code has very little to do with writing to standards.
It has much more to do with knowing what the idiosyncracies of various
platforms are and how to avoid (or work around) them.  It is also useful
to know the various ways things are done in a variety of target OS's, and
write the code so that a config flag can be set to enable alternatives.

Dean Anderson                   [email-masked]  | Support the League for 
KSR Computing Facilities                      | Programming Freedom! Email
Kendall Square Research                       | [email-masked] for info.