

            define (1) --- define expander                           08/27/84


          | _U_s_a_g_e

          |      define [-(f | m)] {<input_file>}


            _D_e_s_c_r_i_p_t_i_o_n

                 'Define'  is  a  text  substitution facility used to replace
                 defined identifiers by their  definitions.   'Define'  takes
                 the file(s) specified in the argument list, processes dddeeefffiiinnneee
                 statements and uuunnndddeeefffiiinnneee statements, and places the output on
                 its  standard  output file.  'Define' also processes iiinnncccllluuudddeee
                 statements.  For more information  on  dddeeefffiiinnneee  and  uuunnndddeeefffiiinnneee
                 statements see the _R_a_t_f_o_r _P_r_o_g_r_a_m_m_e_r_'_s _G_u_i_d_e.

                 In  addition  to  the  way  that Ratfor handles the 'define'
                 statement, this processor will allow  the  user  to  prevent
                 premature  evaluation  of  a given string by enclosing it in
                 brackets, similar  to  'macro'  (please  see  the  Reference
                 Manual entry for the 'macro' command).

                 The following options are available:

          |           -f   Suppress    automatic    inclusion   of   standard
          |                definitions  file.   Macro  definitions  for   the
                           manifest  constants  used throughout the Subsystem
                           reside in the file "=incl=/swt_def.r.i".  'Define'
                           will  process  these  definitions   automatically,
                           unless the "-f" option is specified.

          |           -m   Map  all  identifiers  to  lower  case.  When this
                           option is selected, 'define' considers  the  upper
                           case letters equivalent to the corresponding lower
                           case letters, except inside quoted strings.

                 The  remainder  of  the  command line is used to specify the
                 names of the input file(s).  If no input file is  specified,
                 'define' will expect input from standard input.  Output will
                 be sent to standard output.


            _E_x_a_m_p_l_e_s

                 define file1.r
                 file> define -f
                 define -m file1 file2 file3


            _F_i_l_e_s

                 =incl=/swt_def.r.i for standard Subsystem macro definitions


            _M_e_s_s_a_g_e_s

                 "missing left paren in define"


            define (1)                    - 1 -                    define (1)




            define (1) --- define expander                           08/27/84


                 "non-alphanumeric name in define"
                 "missing right paren in define"
                 "missing parameter in definition"
                      (two commas in a row)
                 "non-numeric parameter not allowed"
                 "too many parameters"
                      (more than 32 parameters)
                 "missing comma in parameter list"
                 "missing comma in parameter list"
                      (no  comma  between  the parameter list or the name and
                 the definition)
                 "invalid file name in include"
                 "includes nested too deeply"
                      (more than five levels deep)
                 "can't open include file"
                 "definition too long"
                      (more then 400 characters long)
                 "missing right paren after definition"
                 "missing left paren after undefine"
                 "non-alphanumeric name in undefine"
                 "missing right paren after undefine"
                 "line too long"
                 "unexpected EOF"


            _S_e_e _A_l_s_o

                 macro (1), rp (1), _R_a_t_f_o_r _P_r_o_g_r_a_m_m_e_r_'_s _G_u_i_d_e






























            define (1)                    - 2 -                    define (1)


