Copyright Digital Equipment Corp. All rights reserved.

Free_Form

 In free source form, statements are not limited to specific
 positions on a source line, and a line can contain from 0 to 132
 characters.

 Blank characters are significant in free source form.  The
 following are rules for blank characters:

  o  Blank characters must not appear in lexical tokens, except
     within a character context.  For example, there can be no
     blanks between the exponentiation operator **.  Blank
     characters can be used freely between lexical tokens to improve
     legibility.

  o  Blank characters must be used to separate names, constants, or
     labels from adjacent keywords, names, constants, or labels.
     For example, consider the following statements:

       INTEGER NUM
       GO TO 40
       20 DO K=1,8

     The blanks are required after INTEGER, TO, 20, and DO.

  o  Some adjacent keywords must have one or more blank characters
     between them.  Others do not require any; for example, BLOCK
     DATA can also be spelled BLOCKDATA.  The following list shows
     which keywords have optional or required blanks.

     Optional Blanks           Required Blanks
     ----------------          ----------------
     BLOCK DATA                CASE DEFAULT
     DOUBLE COMPLEX            DO WHILE
     DOUBLE PRECISION          IMPLICIT type
     ELSE IF                   IMPLICIT NONE
     END BLOCK DATA            INTERFACE ASSIGNMENT
     END DO                    INTERFACE OPERATOR
     END FILE                  MODULE PROCEDURE
     END FORALL                RECURSIVE FUNCTION
     END FUNCTION              RECURSIVE SUBROUTINE
     END IF                    RECURSIVE type FUNCTION
     END INTERFACE             type FUNCTION
     END MODULE                type RECURSIVE FUNCTION
     END PROGRAM
     END SELECT
     END SUBROUTINE
     END TYPE
     END WHERE
     GO TO
     IN OUT
     SELECT CASE


 The exclamation point character (!) indicates a comment if it is
 within a source line, or a comment line if it is the first
 character in a source line.

 The ampersand character (&) indicates a continuation line (unless
 it appears in a Hollerith or character constant, or within a
 comment).  The continuation line is the first noncomment line
 following the ampersand.  Although Fortran 95/90 permits up to 39
 continuation lines in free-form programs, VSI Fortran allows up
 to 511 continuation lines.

 The following shows a continued statement:

 TCOSH(Y) = EXP(Y) + &        ! The initial statement line
            EXP(-Y)           ! A continuation line

 If the first nonblank character on the next noncomment line is an
 ampersand, the statement continues at the character following the
 ampersand.  For example, the preceding example can be written as
 follows:

 TCOSH(Y) = EXP(Y) + &         
           & EXP(-Y)            

 If a lexical token must be continued, the first nonblank character
 on the next noncomment line must be an ampersand followed
 immediately by the rest of the token.  For example:

 TCOSH(Y) = EXP(Y) + EX&
           &P(-Y)            

 If you continue a character constant, an ampersand must be the
 first non-blank character of the continued line; the statement
 continues with the next character following the ampersand.  For
 example:

 ADVERTISER = "Davis, O'Brien, Chalmers & Peter&
                  &son"
 ARCHITECT  = "O'Connor, Emerson, and Davis&
                  & Associates"

 In VSI Fortran, if the ampersand is omitted on the continued
 line, the statement continues with the first non-blank character in
 the continued line.  So, in the preceding example, the whitespace
 before "Associates" would be ignored.

 The ampersand cannot be the only nonblank character in a line, or
 the only nonblank character before a comment; an ampersand in a
 comment is ignored.