


      EFL(1)                      (UNIX 5.2)                     EFL(1)



      NAME
           efl - Extended Fortran Language

      SYNTAX
           efl [ options ] [ files ]

      DESCRIPTION
           Efl compiles a program written in the EFL language into
           clean Fortran on the standard output.  Efl provides the C-
           like control constructs of ratfor(1):

                statement grouping with braces.

                decision-making:
                     if, if-else, and select-case (also known as
                     switch-case);
                     while, for, Fortran do, repeat, and repeat ...
                     until loops;
                     multi-level break and next.

           EFL has C-like data structures, e.g.:

                struct
                     {
                     integer flags(3)
                     character(8) name
                     long real coords(2)
                     } table(100)

           The language offers generic functions, assignment operators
           (+=, &=, etc.), and sequentially evaluated logical operators
           (&& and ||).  There is a uniform input/output syntax:

                write(6,x,y:f(7,2), do i=1,10 { a(i,j),z.b(i) })

           EFL also provides some syntactic ``sugar'':

                free-form input:
                     multiple statements per line; automatic
                     continuation; statement label names (not just
                     numbers).

                comments:
                     # this is a comment.

                translation of relational and logical operators:
                     >, >=, &, etc., become .GT., .GE., .AND., etc.

                return expression to caller from function:
                     return (expression)

                defines:



      Page 1                                          (73 A2 02MT REV1)






      EFL(1)                      (UNIX 5.2)                     EFL(1)



                     define name replacement

                includes:
                     include file

           Efl understands several option arguments:  -w suppresses
           warning messages, -# suppresses comments in the generated
           program, and the default option -C causes comments to be
           included in the generated program.

           An argument with an embedded = (equal sign) sets an EFL
           option as if it had appeared in an option statement at the
           start of the program.  Many options are described in the
           reference manual.  A set of defaults for a particular target
           machine may be selected by one of the choices:  system=unix,
           system=gcos, or system=cray.  The default setting of the
           system option is the same as the machine the compiler is
           running on.

           Other specific options determine the style of input/output,
           error handling, continuation conventions, the number of
           characters packed per word, and default formats.

           Efl is best used with rf(1)

      SEE ALSO
           rc(1), rf(1), ratfor(1).




























      Page 2                                          (73 A2 02MT REV1)



