Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!uwm.edu!uakari.primate.wisc.edu!ginosko!uunet!mstan!amull From: amull@Morgan.COM (Andrew P. Mullhaupt) Newsgroups: comp.lang.c Subject: Re: fgetpos, fsetpos, and ANSIness in general Summary: Creeping Pascalism Message-ID: <432@s5.Morgan.COM> Date: 9 Oct 89 04:34:37 GMT References: Organization: Morgan Stanley & Co. NY, NY Lines: 40 In article , otto@tukki.jyu.fi (Otto J. Makela) writes: > Here I go again, braving all the flames of the whole network... > > In general, I've come to the same conclusion as a friend: "Seems the ANSI thing > has several changes just to make life difficult for traditional Unix C users." > Many of the "features" are truly bizarre (think about #) and there is a real > danger of creeping Pascalism (now that was a nasty thing to say -- should I > crosspost to alt.religion.computers ? :-) > Well some of think that creeping Pascalism would improve the C language but raging militant jihad Pascalism is what is really called for. Seriously, folks, One of the resident C experts (and here we have several actual C experts) once explained to me how to structure all my inlude files and always use function prototypes for sources with many files. I was stunned to find how primitive C was compared even to the unit facility of early Pascals and the sleek modernity of Modula-2. Why can't I have an array of function variables? Why do I need to creat a spurious structure name on the way to a recursive typedef? From what I can see the ANSI style of C is ten times more reasonable than what went before. (ANSI standards are two for three with me, since they are improving FORTRAN with 8x, but they could have had variable length arrays (ISO level 1) in Pascal and chickened out instead.) Later, Andrew Mullhaupt P.S. Thanks to all who suggested ways to get macro expansion and indentation into incomprehensible code. It was all for naught in my case, since the macro expansion (even after removing trivial and "include source" lines) resulted in an increase from 65 to 720 lines of source in one typical case. The indent and cb programs were broken by trying this code, (indent introduced a syntax error due to somehow substituting *= where =* was required). This could only happen in C. Disclaimer: These opinions are all mine, but I constantly try to export them.