When I learned Fortran many years ago, the first
character in a line to be printed (or later,
displayed) controlled line or page feed. A blank
produced a new line, a "1" a new page. We used these
to control what happened.
These days, this doesn't seem to be the case, so
in a sense, Fortran is no longer backward
compatible in this one sense. Or is it?
When I learned Fortran many years ago, the first
character in a line to be printed (or later,
displayed) controlled line or page feed. A blank
produced a new line, a "1" a new page. We used these
to control what happened.
These days, this doesn't seem to be the case, so
in a sense, Fortran is no longer backward
compatible in this one sense. Or is it?
As an aside, back in the 1970's, working on an
IBM 360, where we handed in a stack of punch cards
to be run and got the output some time later as a
print-out, I once accidentally put a "c" in as the
first character in a line of output, and this caused
an endless paper feed, until the operator stopped
it. I got a stern note never to run that program
again, on top of a thick stack of blank paper.
When I learned Fortran many years ago, the first
character in a line to be printed (or later,
displayed) controlled line or page feed. A blank
produced a new line, a "1" a new page. We used these
to control what happened.
These days, this doesn't seem to be the case, so
in a sense, Fortran is no longer backward
compatible in this one sense. Or is it?
As an aside, back in the 1970's, working on an
IBM 360, where we handed in a stack of punch cards
to be run and got the output some time later as a
print-out, I once accidentally put a "c" in as the
first character in a line of output, and this caused
an endless paper feed, until the operator stopped
it. I got a stern note never to run that program
again, on top of a thick stack of blank paper.
... we still use Fortran carriage control in column 1 in all of our main write statements, about 40,000 of them in our code.
When I learned Fortran many years ago, the first
character in a line to be printed (or later,
displayed) controlled line or page feed. A blank
produced a new line, a "1" a new page. We used these
to control what happened.
These days, this doesn't seem to be the case, so
in a sense, Fortran is no longer backward
compatible in this one sense. Or is it?
As an aside, back in the 1970's, working on an
IBM 360, where we handed in a stack of punch cards
to be run and got the output some time later as a
print-out, I once accidentally put a "c" in as the
first character in a line of output, and this caused
an endless paper feed, until the operator stopped
it. I got a stern note never to run that program
again, on top of a thick stack of blank paper.
On Wed, 3 Apr 2024 15:47:13 -0500, Lynn McGuire wrote:
... we still use Fortran carriage control in column 1 in all of our main
write statements, about 40,000 of them in our code.
Never too soon to start fixing them. Do it one at a time.
Gary Scott wrote to All <=-
On 4/3/2024 7:43 AM, db wrote:
When I learned Fortran many years ago, the first
character in a line to be printed (or later,
displayed) controlled line or page feed. A blank
produced a new line, a "1" a new page. We used these
to control what happened.
These days, this doesn't seem to be the case, so
in a sense, Fortran is no longer backward
compatible in this one sense. Or is it?
This was always, and remains device dependent.
Gary Scott wrote to All <=-
GS> On 4/3/2024 7:43 AM, db wrote:
> When I learned Fortran many years ago, the first
> character in a line to be printed (or later,
> displayed) controlled line or page feed. A blank
> produced a new line, a "1" a new page. We used these
> to control what happened.
>
> These days, this doesn't seem to be the case, so
> in a sense, Fortran is no longer backward
> compatible in this one sense. Or is it?
>
GS> This was always, and remains device dependent.
That's not completely true.
Using MS-FORTRAN on my vintage computers, I always have to start my
FORMATs
with "1X". If I fail to do that, the output, even to the screen, chops
off
that first character.
... Epitaph on a gravestone: Cheerio, see you soon.
___ MultiMail/Linux v0.52
On 4/4/2024 8:52 AM, Dr. What wrote:
Gary Scott wrote to All <=-
GS> On 4/3/2024 7:43 AM, db wrote:
> When I learned Fortran many years ago, the first
> character in a line to be printed (or later,
> displayed) controlled line or page feed. A blank
> produced a new line, a "1" a new page. We used these
> to control what happened.
>
> These days, this doesn't seem to be the case, so
> in a sense, Fortran is no longer backward
> compatible in this one sense. Or is it?
>
GS> This was always, and remains device dependent.
That's not completely true.
Using MS-FORTRAN on my vintage computers, I always have to start my
FORMATs
with "1X". If I fail to do that, the output, even to the screen, chops
off
that first character.
Hmmm. I'd say that's precisely what "device dependent" means. Although some behavior in MS Fortran was just bugs.
... Epitaph on a gravestone: Cheerio, see you soon.
___ MultiMail/Linux v0.52
On 4/3/2024 5:38 PM, Lawrence D'Oliveiro wrote:
On Wed, 3 Apr 2024 15:47:13 -0500, Lynn McGuire wrote:
... we still use Fortran carriage control in column 1 in all of our
main write statements, about 40,000 of them in our code.
Never too soon to start fixing them. Do it one at a time.
Gotta do them all at once since the carriage control is controlled by
the OPEN statement.
Gary Scott wrote:
On 4/4/2024 8:52 AM, Dr. What wrote:
Gary Scott wrote to All <=-
GS> On 4/3/2024 7:43 AM, db wrote:
> When I learned Fortran many years ago, the first
> character in a line to be printed (or later,
> displayed) controlled line or page feed. A blank
> produced a new line, a "1" a new page. We used these
> to control what happened.
>
> These days, this doesn't seem to be the case, so
> in a sense, Fortran is no longer backward
> compatible in this one sense. Or is it?
>
GS> This was always, and remains device dependent.
That's not completely true.
Using MS-FORTRAN on my vintage computers, I always have to start my
FORMATs
with "1X". If I fail to do that, the output, even to the screen, chops >>> off
that first character.
Hmmm. I'd say that's precisely what "device dependent" means.
Although some behavior in MS Fortran was just bugs.
... Epitaph on a gravestone: Cheerio, see you soon.
___ MultiMail/Linux v0.52
Not at all, the 1X means that the line-feed character is a space. A "+" there would probably overlay whatever had previously been printed to
that line with something new.
I have used several different compilers on several different
architectures over the years (the newest adhered to the F77 standard)
and the meaning of the first character on a line was common to all of them.
Just because there was a frequent
convention on Windows or Linux doesn't mean it was universal.
Sysop: | DaiTengu |
---|---|
Location: | Appleton, WI |
Users: | 991 |
Nodes: | 10 (0 / 10) |
Uptime: | 120:14:26 |
Calls: | 12,958 |
Files: | 186,574 |
Messages: | 3,265,650 |