NAME
     RLaB - matrix oriented, interactive programming environment

SYNOPSIS
     rlab [-Vdlmnpqr] [file(s)] [-]

DESCRIPTION
     rlab  is   an   interpreter   for   the   RLaB   Programming
     Language/Environment. The RLaB language is useful for matrix
     or array oriented numerical  analyses.  RLaB  is  especially
     useful for prototyping and experimenting with algorithms.

     rlab also provides a convenient interface  to  many  of  the
     LAPACK, FFTPACK, and RANLIB subroutines.

OPTIONS
     -V   Prints the version number to stderr and exits.

     -d   causes a readable form of the internal stack  machine's
          compiled  program  to  be output to stderr. This option
          should be used in conjunction with `-qln' options. This
          option is not intended for general use.

     -l   prevents loading of the rlab library of rfiles.

     -m   prevents printing of the greeting message.

     -n   prevents line number and  file  name  information  from
          being  used  in  the internal stack machine codes. This
          option should only  be  used  with  the  `-dlnq'.  This
          option is not intended for general use.

     -p   prevents rlab from using the specified  pager  for  all
          output.

     -q   prevents loading of the startup file

     -r   prevents usage of the GNU readline library for  command
          line editing.

     file(s)
          are loaded and executed by rlab after the `.rlab' file,
          and after the library files.

     -    forces rlab to go interactive after all  the  files  on
          the command line have been executed.

ENVIRONMENT
     rlab checks the values of several environment variables upon

Version 0.95 beta        3 October 1993                         1

     startup,  and uses them to overide the compiled in defaults.
     If a particular environment variable has not been  set,  the
     default value is used.

     RLAB_RC0 Startup rfile.

     RLAB_HELP_DIR The principle directory of help files.

     RLAB_LIB_DIR The directory of rfiles to load on startup.

     RLAB_PAGER The pager to use for paging  help  files  to  the
     screen.  If  RLAB_PAGER  is not set, then the environment is
     checked for PAGER . If neither exists, then the pager speci-
     fied at compile time is used.

     RLAB_SEARCH_PATH The  set  of  directories  to  search  when
     attempting to load rfiles.

EXECUTION
     rlab is normally executed from a shell  command  line.  Upon
     startup rlab

     Processes the command line options and files.

     Executes the `.rlab' file.

     Executes any `.r' files in the library directory.

     Executes any files specified on the command line.

     Goes into interactive mode if no files are specified on the
     command line, or if the `-' option is used.

     rlab can also  be  invoked  by  using  the  `#!'  convention
     employed  by exec(2).  A rlab script that begins with a line
     of the form:

          #! pathname [arg]

     where pathname is the full pathname to the rlab  executable,
     and arg is optional argument(s). Note that if the `-' option
     is not specified rlab will  not  go  interactive  after  the
     script has been executed.

DOCUMENTATION
     rlab has an on-line help system, which can  be  accessed  by
     typing  `help'.  A  tutorial  and  a  reference  manual  are
     currently being worked on.

     This man-page was not intended to provide a  description  of

Version 0.95 beta        3 October 1993                         2

     the  language, or rlab's features. Please refer to the manu-
     als, or the on-line help.

BUGS
     Paged output gets hosed after an `out of memory' message.

     rlab implements fprintf(), printf() and sprintf() using  the
     C  library  functions,  fprintf, printf and sprintf, so rlab
     inherits any bugs or limitations of the library functions.

     Using the load()  function  on  the  same  line  as  another
     expression may cause the other expression to be ignored. For
     example:

          load ("test.r"); a = 100

     Will result in the second expression being ignored. This  is
     caused  by  the  original  syntax  being  used  with the new
     parser/machine capability.  What happens: the tokens for the
     second expression get wiped out when the parser is called to
     start parsing the statements in test.r.  The  workaround  is
     simple;  don't put calls to load() on the same line as other
     expressions. This bug will be fixed in one or two releases.

     Send bug reports to: ians@eskimo.com.

     Bug reports should include the rlab version number, a  short
     rfile  that exercises the bug, and a description of the host
     operating system and hardware.

AUTHORS
     Ian Searle (ians@eskimo.com)

     Phillip Musumeci is the author of  the  RLaB  Tutorial  (Not
     Available Yet)

     Brad Hards is the author of the RLaB Reference  Manual  (Not
     Available Yet)

     Mike Brennan has contributed some code from mawk.

SEE ALSO
     sh (1) more (1) exec (2)

Version 0.95 beta        3 October 1993                         3
