[comp.lang.fortran] Carriage control characters

jf@threel.co.uk (John Fisher) (04/17/91)

trevor@ccc.govt.nz writes:

> Direct cursor addressing isn't standard Fortran. (Fortran carriage-controls for
> printers IS standard, but we have one printer that doesn't recognise them...)

Well, sort of.  What the standard says is that carriage control charcters
are recognised when you are *printing*.  And it defines *printing* to mean
"The transfer of information in a formatted record to certain devices
determined by the processor".  So if your `processor' decides that
transferring records to LPA3, or more to the point, to your console screen
isn't *printing*, then it doesn't have to recognise CCCs. 

The standard adds that just because you code a PRINT statement it doesn't
mean that it's *printing*, and if you code a WRITE it doesn't mean you're
not *printing*.

--John

buckland@cheddar.ucs.ubc.ca (Tony Buckland) (04/17/91)

In article <280c1ad4@ThreeL.co.uk> jf@threel.co.uk (John Fisher) writes:
>trevor@ccc.govt.nz writes:
>> Direct cursor addressing isn't standard Fortran. (Fortran carriage-controls for
>> printers IS standard, but we have one printer that doesn't recognise them...)
>Well, sort of.  What the standard says is that carriage control charcters
>are recognised when you are *printing*. ... if your `processor' decides that
>transferring records to LPA3, or more to the point, to your console screen
>isn't *printing*, then it doesn't have to recognise CCCs. 
>The standard adds that just because you code a PRINT statement it doesn't
>mean that it's *printing*, and if you code a WRITE it doesn't mean you're
>not *printing*.
 
 Carriage control in the absence of a carriage, as on a display
 screen, is also subject to reasonable interpretation.  Printing
 "on the same line" ("&" carriage control on my system, probably
 something else on yours) can be done when ink is banged onto paper
 and there's a choice of whether or not to advance the paper before
 printing another line, but not on a character-oriented display
 restricted to a character set like ASCII or EBCDIC.  Skipping
 "to the next page" is simulated on my system by skipping three
 lines, not by scrolling however many lines it would take to
 reach a count of 60 lines since the last "page" began, assuming
 that the system remembers.  Skipping an extra 60 lines to reach
 "the next sheet" would be even more bizarre on a display.
 Only single, double and triple spacing make real sense on a
 display.

wws@raphael.cray.com (Walter Spector) (04/19/91)

In article <280c1ad4@ThreeL.co.uk>, jf@threel.co.uk (John Fisher) writes:
|> trevor@ccc.govt.nz writes:
|> 
|> > Direct cursor addressing isn't standard Fortran. (Fortran carriage-controls for
|> > printers IS standard, but we have one printer that doesn't recognise them...)
|> 
|> Well, sort of.  What the standard says is that carriage control charcters
|> are recognised when you are *printing*.  And it defines *printing* to mean
|> "The transfer of information in a formatted record to certain devices
|> determined by the processor".

Does anyone see the need to have carraige control maintained in
the Fortran Standard?  There *is* a seperate ANSI Standard for
Carraige Control which has existed for years - far more detailed
than what is in the Fortran Standard.  The notion of carraige control
is hopelessly outdated these days.

What do netters think?  Should the F90 committee have removed carraige
control from the Standard?  Is this something they should do 'the next
time around'?

Walt

-- 
Walt Spector
(wws@renaissance.cray.com)                       "Parity is for farmers"
Sunnyvale, California                                    - Seymour Cray
_._ _._ _.... _. ._.

vsnyder@jato.jpl.nasa.gov (Van Snyder) (04/20/91)

In article <141240.2451@timbuk.cray.com> wws@raphael.cray.com (Walter Spector) writes:
>In article <280c1ad4@ThreeL.co.uk>, jf@threel.co.uk (John Fisher) writes:
>|> trevor@ccc.govt.nz writes:
>|> 
>|> > Direct cursor addressing isn't standard Fortran. (Fortran carriage-controls for
>|> > printers IS standard, but we have one printer that doesn't recognise them...)
>|> 
>|> Well, sort of.  What the standard says is that carriage control charcters
>|> are recognised when you are *printing*.  And it defines *printing* to mean
>|> "The transfer of information in a formatted record to certain devices
>|> determined by the processor".
>
>Does anyone see the need to have carraige control maintained in
>the Fortran Standard?  There *is* a seperate ANSI Standard for
>Carraige Control which has existed for years - far more detailed
>than what is in the Fortran Standard.  The notion of carraige control
>is hopelessly outdated these days.
>
>What do netters think?  Should the F90 committee have removed carraige
>control from the Standard?  Is this something they should do 'the next
>time around'?
>
>Walt
>
>-- 
>Walt Spector
>(wws@renaissance.cray.com)                       "Parity is for farmers"
>Sunnyvale, California                                    - Seymour Cray
>_._ _._ _.... _. ._.

One of the reasons for what most perceive as "warts" in fortran 90 is
compatibility to fortran 77.  The need for compatibility won't go away:
there's just too much software that uses each feature of fortran 77.
After 10-15 years, there will be too much software that uses each new
feature of fortran 90 to dream of removing any feature, or spelling it
differently (unless somebody makes a PD translator that re-writes fortran
77 and fortran 90 features in fortran '03).  So carriage control is
probably here to stay, and any mistakes the committee made in formulating
fortran 90 are also here to stay.

-- 
vsnyder@jato.Jpl.Nasa.Gov
ames!elroy!jato!vsnyder
vsnyder@jato.uucp