|
Prev: Vector Algebra Module
Next: Zero-size arrays
From: Gary Scott on 6 Apr 2008 12:51 Walter Spector wrote: > Ron Shepard wrote: > <snip> >> And we still to this day do not really have a standard preprocessor in >> common use, something else that has been essential to writing >> efficient portable code since the 1970's. Yes, the C preprocessor >> syntax is a de facto standard, but it is never going to be >> standardized by the ANSI committee. > > > There is always COCO... Dan Nagles extended version (which > has some additional text substitution capabilities) works > rather well. Most of the (dead) operating systems I've used in the past had excellent native "shell" languages, some of which could be embedded in the Fortran source. A standard preprocessor would have had to be better than the native tool set for me to want to use it. > > W. -- Gary Scott mailto:garylscott(a)sbcglobal dot net Fortran Library: http://www.fortranlib.com Support the Original G95 Project: http://www.g95.org -OR- Support the GNU GFortran Project: http://gcc.gnu.org/fortran/index.html If you want to do the impossible, don't hire an expert because he knows it can't be done. -- Henry Ford
From: Ron Shepard on 6 Apr 2008 13:11 In article <Ma7Kj.1072$GO4.409(a)newssvr19.news.prodigy.net>, Gary Scott <garylscott(a)sbcglobal.net> wrote: > Ron Shepard wrote: > > > The harris computers interpreted real*8 to be their 6-byte 48-bit > > floating point. > > Was curious as to which processor? My H1200 reference manual only > references REAL*3, REAL*6, and REAL*12 (no mention of real*8 equivalence > to REAL*6) I do not remember which processor or compiler. I used a Harris computer in the 1981-1983 period if that helps narrow it down. I had about 50K lines of fortran that I ported, and I ended up using real*8 declarations because I also had to maintain the code on some of the other computers that I mentioned, and that seemed to result in the path of least resistance. I might have needed a compiler option to get the mapping, I don't remember. I do remember choosing to use 48-bit floating point because it gave me the best combination of execution speed and precision for my codes. Using machines like this really drove home the need to easily specify precisions in fortran. This eventually came with the parameterized real kinds in f90, but it was needed much more in the 80's than it was later in the 90's (or even now, for that matter) because of the wide range of hardware that was available on the market at that time. $.02 -Ron Shepard
From: Ron Shepard on 6 Apr 2008 13:35 In article <teednfW0Euj8cmXanZ2dnUVZ_vGinZ2d(a)earthlink.com>, Walter Spector <w6ws_xthisoutx(a)earthlink.net> wrote: > Ron Shepard wrote: > > ... Cray > > *WANTED* you to just use REAL declarations for 64-bit floating point > > because that would make it harder for you to move your code > > elsewhere (VAX minicomputers, etc.). > > The Cray machines were built with 64-bit floating point in mind. > There was no built-in hardware to address or process 32-bit data. > So it was 'natural' to make REAL 64 bits wide. Yes, I agree, but that was not my point. For example, Cray compilers also supported a few dozen oddball intrinsic functions that no other vendor supported. The more your code relied on those intrinsic functions, the more your code was locked in to using Cray compilers and Cray hardware. Cray wanted you to use REAL declarations, in part, for the same reason, it helped to lock you in to their business model. Other vendors in the late 70's and 80's did this too, of course, with language features and library routines, it was standard practice. > > It was this vendor attitude, > > and the influence they had over the ANSI standards committee, that > > prevented any updates to f77 during the decade of the 1980's. > > False. Cray was actually a big proponent of F90. You must be > thinking of another "supercomputer" company whose name also began > with the letter "C". Yes, I have stacks of transparencies 2 or 3 inches high from both DEC and CONVEX from about 1987 where they were preaching the evils of the proposed f8x. I don't remember Cray doing that, and while other vendors did this too to some extent, CONVEX and DEC were the loudest. By that time, they had already managed to delay ANSI approval by 3 or 4 years, and they would continue to be successful for another 3 or 4 years after that. It is very clear from this material, which I think was presented to all of their major customers during that time, that their opposition was based primarily on business and marketing reasons, not because the users of their hardware or compilers were benefiting from their delaying tactics. > > And we still to this day do not really have a standard preprocessor > > in common use, something else that has been essential to writing > > efficient portable code since the 1970's. Yes, the C preprocessor > > syntax is a de facto standard, but it is never going to be > > standardized by the ANSI committee. > > There is always COCO... Dan Nagles extended version (which > has some additional text substitution capabilities) works > rather well. I don't think COCO is supported by a single fortran vendor that I use right now. On the other hand, the C preprocessor is supported by every vendor that I know of. That's why I called it a "de facto" standard. However, there is no chance that this de facto standard is going to be approved and standardized (there are differences from vendor to vendor) even though it has been used for the past 25 years by everyone. $.02 -Ron Shepard
From: Ron Shepard on 6 Apr 2008 13:59 In article <ron-shepard-913E66.12350406042008(a)comcast.dca.giganews.com>, Ron Shepard <ron-shepard(a)NOSPAM.comcast.net> wrote: > > False. Cray was actually a big proponent of F90. You must be > > thinking of another "supercomputer" company whose name also began > > with the letter "C". > > Yes, I have stacks of transparencies 2 or 3 inches high from both > DEC and CONVEX from about 1987 where they were preaching the evils > of the proposed f8x. I don't remember Cray doing that, and while > other vendors did this too to some extent, CONVEX and DEC were the > loudest. I forgot to ask this question in my previous post. Does anyone know the stance of some of the other vendors on F8x in the early and mid 1980's? You say that Cray was a proponent of f90. Were they always a supporter, or only toward the end as they were being bought by SGI? My impression was that IBM was more or less neutral, but I don't have much first-hand information about them. I do know that they were very very slow just supporting f77 on their mainframes, but later on their rs6000 workstations and parallel computers in the early and mid 90's they were pretty good with f90 and f95 support. CDC (and later ETA) both supported vector syntax in their compilers long before f90 was approved. Did they support f8x in general, or did they like just this one feature? What about some of the early parallel computer vendors such as Alliant and Hypercube? Anyone know their position on f8x? Did they have any representatives on the ANSI committee? What about the early RISC workstation vendors such as Ardent and Steller that began to appear in 1986 or so? $.02 -Ron Shepard
From: Greg Lindahl on 6 Apr 2008 14:27
In article <ron-shepard-913E66.12350406042008(a)comcast.dca.giganews.com>, Ron Shepard <ron-shepard(a)NOSPAM.comcast.net> wrote: > On the other hand, the C preprocessor is supported > by every vendor that I know of. Yes, but you have to use a K&R preprocessor, for which there is no standard. It's kinda hard to put a non-standardized thingie into a standard. -- g |