Related articles |
---|
In a Pascal-like language, would being able to declare a subroutine as noitalmost@cox.net (noitalmost) (2011-03-11) |
Re: In a Pascal-like language, would being able to declare a subroutin noitalmost@cox.net (noitalmost) (2011-03-15) |
Re: In a Pascal-like language, would being able to declare a subroutin mcr@wildcard.demon.co.uk (Martin Rodgers) (2011-03-16) |
Re: In a Pascal-like language, would being able to declare a subroutin sinu.nayak2001@gmail.com (Srinivas Nayak) (2011-03-16) |
Re: In a Pascal-like language, would being able to declare a subroutin gah@ugcs.caltech.edu (glen herrmannsfeldt) (2011-03-19) |
Re: In a Pascal-like language, would being able to declare a subroutin sinu.nayak2001@gmail.com (Srinivas Nayak) (2011-03-21) |
Re: Fortran PURE routines, was In a Pascal-like language, gah@ugcs.caltech.edu (glen herrmannsfeldt) (2011-03-24) |
From: | glen herrmannsfeldt <gah@ugcs.caltech.edu> |
Newsgroups: | comp.compilers |
Date: | Thu, 24 Mar 2011 17:51:25 +0000 (UTC) |
Organization: | A noiseless patient Spider |
References: | 11-03-032 11-03-040 11-03-043 11-03-044 11-03-047 11-03-052 |
Keywords: | optimize, design, Fortran |
Posted-Date: | 27 Mar 2011 01:38:29 EDT |
Srinivas Nayak <sinu.nayak2001@gmail.com> wrote:
(previous snip regarding PURE functions)
> You are correct...The similar thing is found in C++; static functions
> can use only static variables. But however strict a compiler may be,
> there is always a loop hole. Pointer is one biggest threat.
That is why it is easier to keep PURE in Fortran. People were writing
in Fortran almost 40 years before POINTER was available, and even then
it isn't as big a loophole as in C.
(Not counting CRAY pointers, which weren't part of the language,
though were used anyway.)
Fortran with call-by-reference (or call-by-value-result) normally
doesn't give one access to the pointer to modify, as C does. Fortran
POINTER variables are also restricted much more than in C. For real
protection, bounds checking has to be done, and most systems don't, or
don't by default.
-- glen
Return to the
comp.compilers page.
Search the
comp.compilers archives again.