Cmd line syntax: 
        <opt. output .C file>=<input .SAI file><opt. switches>
NOTE: prefixing switches with '/NO' as in '/NOCRLF' negate the switch.

SWITCHES
--------
/BIts:<letters> - set bits corresponding to letters A:Z (default is
        none- each time it is called all letters not mentioned are
        cleared).
/BLockWarning - print WARNING msg for mismatched block labels
        (default is /NOBLOCKWARNING).
/CAlltrace - generate procedure call-trace file consisting of all
        ordered pairs: 'procedure-IN,procedure-BEING-CALLED'.
/CHeck - perform array bounds runtime checking and accessing (default
        is /CHECK).
/CLutter - find all declared but unused symbols (default /NOCLUTTER).
/COErce - do automatic coercion between different data types (default
        is /COERCE).
/COMment - map all user comments to /*...*/. If /NOCOMMENT then delete
        all comments (default is /COMMENT).
/CONCat - use nested concat(...) calls instead of single catlist()
        call to implement '&' (default is /NOCONCAT).
/CONDitional eval - force PSAIL eval of IFC...THENC/ELSEC...ENDC
        (default is /CONDITIONALEVAL).
/COUntfsm:<opt. NOW> - If enabled, count the number of times each FSM 
        was called in parsing your program and generate a report. If
        NOW is added then print status immediately (the default
        is /NOCOUNTFSM).
/CRlf - convert CRLF to '\n'. /NOCRLF outputs CRLF macro (default
        is /NOCRLF).
/DEFine:<id>=<const> - force a macro constant to be defined.
/DOuble - promote floating fct calls to (double) using casts
        (default is /DOUBLE).
/ERror:<opt BACKTRACE> - request user to answer 'Yes or No' to
        'Continue? question if a fatal error occurs. /NOERROR
        automatically answers 'Yes' ignoring all fatal errors. If the
        BACKTRACE option is specified, then it also prints a
        backtrace of the recursive descent parse of the offending
        code. (Default is /ERROR).
/EValmacros - macros are added to the PSAIL operator symbol table and
        are evaluated at translation time rather than postponed for
        evaluation by the target C compiler (default is /NOEVALMACROS).
/EXtensions - use PSAIL language extensions described in the manual
        (default is /NOEXTENSIONS).
/FoldConstExprs - simplify constant expressions by folding (i.e.
        (1+2+1) = 4) (default is /FOLDCONSTEXPRS).
/GCcode - output additional Garbage Collector code to emulate SAIL
        String G.C. (default is /GCCODE).
/HElp - print this list of switches (default is /NOHELP).
/LEap - append /*LEAP*/ warning comment to all <leaprun.c> routines
        (default is /NOLEAP).
/LOCal files - generate '#include "files"' for the local disk rather 
        than '#include <files>' (default is /LOCALFILES).
/LOGo - print PSAIL logo upon successful compilation (default /LOGO).
/MATH - use single precision (float) <psrun9.c> in <sairun..c> portable
        math package instead of those of the target machine. All math
        runtimes have 'p' prefix (default is /NOMATH).
/MAKeRequireFile:<opt-file> - create a REQUIRE file '<saiFile>.RQU'
        or <opt-file> if specified which contains EXTERNAL
        <declarations> for all INTERNAL <declarations> found (default
        is /NOMAKeRequireFile).
/MOdules - map all 'REQUIRE "name" LOAD!MODULE' to '#include name'
        else trap as a non-portability error (default is /NOMODULE).
/NAMEMAP:f1,f2,...,fn - check all C symbols against a hash table of
        target C library symbols specified in files f1,...,fn. If no
        files fi are specified, then look for file PSUNIX.WDS
        (the default is /NONAMEMAP).
/NUL - don't save the output in a file. Send to device NUL: (default
        is /NONUL).
/Output SAIL statements - as comments before C-translation in the .C
        file (default is /NOOUTPUTSAILSTATEMENTS).
/PREttyPrint:nCols,nSpaces - wrap output lines to nCols (line-width
        default 72) columns with the appropriate leading white space
        nSpaces (white-space/block-level default 2) for each block
        (default /NOPRETTYPRINT). Map TAB to SPACE. If nSpaces=0 then
        do not map TAB to SPACE and simply wrap lines greater in
        length than nCols.
/PROCesses - output processes runtime code (default is /NOPROCESSES).
/PROFile - output additional PROFILE runtime code (default /NOPROFILE).
/PSAIlLibrary:[ppn] - change PSAIL library account to [ppn] from
        the default [50,752].
/REAL:<type> - declare the default C floating point precision for
        SAIL 'REAL' type declarations. Eg. /REAL:float, /REAL:single
        (same as float) or /REAL:double. (The default is /REAL:float).
/REPort:<opt. NOW> - report PSAIL compiler statistics at end of 
        compilation. If NOW is added then print report immediately
        (the default is /NOREPORT).
/REQuire - evaluate all REQUIRE 'file' SOURCE!FILE statements in
        PSAIL instead of at C compile time (default is /NOREQUIRE
        which makes an #include file).
/SCreen - also output translation onto terminal (as a debugging tool)
        (default is /NOSCREEN).
/SLob - don't issue /*WARNING*/, /*LEAP*/ or trash-graphic
        messages. This allows for sloppy programming practice if
        desired (default is /NOSLOB).
/StrStackFrame:f - change Garbage Collector string stack frame factor
        f [from 0.01] (a wizard switch) (default is /NOSTRSTKFRAME).
/Timer - enable CPU run-time clock timings to be inserted in the
        front of statements as they are being parsed in the format:
        /*HH:MM:SS*/ (default is /NOTIMER).
/UNDf - append /*UNDF*/ comment to all undefined symbols. For /NOUNDf,
        undefined symbols are fatal errors. (Default is /UNDF).
/UNIque:n - output, as comments, all non-unique declaration symbols > n
        characters (8 is default) long at the end of the program and
        as each procedure is parsed. If n<0 then also list all symbols
        declared in each block. Otherwise only list the symbols in
        the block if there is a uniqueness failure. (The default is
        /NOUNIQUE).
/Warning bits:0nnnn - set warning msg bits to octal '0nnnn' in
        [0:01777] to select desired trash-graphic error messages
        (default 01777 is all errors) (default is /WARNINGBITS:01777).
/# - interpret the '#' in SAIL code as 'COMMENT' without requiring
        the DEFINE #={Comment } in the SAIL program (default is /NO#).
        
When enabled for a particular PSAIL compiler,
/DEBug:nn...n - output debug information on terminal and/or .C file.
        Octal#nnn        Procedure(s)
        ---------        ------------
            1            HASH!C,PUT!HASH!C,BUILD!TABLES,ADD!BUILTIN,
                         READFILE,READTRASH!GRAPHICS
            2            CVLOWER,CVEVALQUOTE,CVSTYPE,CVTYPES,
                         CVT!ANY!TO!CHR
            4            [CVT!SAIL!TO!C].6 (i.e. PRETTY!PRINT input)
           10            COPY!EITHER,COPY!OMIT,RIGHTSTATEMENT
           20            GET!TOKEN,GETID,GET!C!TOKEN
           40            PUSH!BLOCK!NAME,POP!BLOCK!NAME
          100            PRETTY!PRINT(cInput)
          200            MAP!DECLAR,MAP!WS!COMMENTS,MAP!QUOTES,
                         MAP!WHITESPACE,MAP!EMBEDDED!COMMENTS,MAP!BE
                         MAP!BKSLASH!STR
          400            PUSH,POP,PUSHNUMBER,POPNUMBER
         1000            GET!NEXT!STATEMENT,GET!INPUT,GET!NUMBER,
                         EXPAND!MACRO
         2000            PROCESS!TOKEN
         4000            INFIX!TO!PREFIX,LEFT!EXPR,RIGHTEXPR,MAP!ARGS
        10000            MAP!EXPR,SIMPLE!MAP
        20000            CVT!SAIL!TO!C,(final result)
        40000            FSM(i)
       100000            INSERT!BEFORE!WHITE,REMOVE!WHITE!ENDS
       200000            JUSTIFY!TEXT,PRETTY!PRINT,P!PCHK!LINE
       400000            MAP!INF,CV!PRINT!ARGLIST,MAP!LEAP!TRIPLE
      1000000            FSM2, R!D!EXPR!MAP
      2000000            CHK!ID, CHK!NUMBER, CHK!INTEGER, 
                         CHK!EXPR!LIST, CHK!ICONST, CHK!SCONST, 
                         CHK!REAL, CHK!C!KEYWORD, CVIDW, CVDWI, 
                         CHK!STR!DRYROT, CHK!LEAP!OPTIMIZE
                         ISSAIDECLAR, ISSCALARTYPE, SET!PREFACE
      4000000            TRASH!LEFT!WS,TRASH!RIGHT!WS
     10000000            UNIQDECLARATIONS,CHK!NAME!MAP,CV5HASH,CV5INT
     20000000            FIND!SYMBOL,FIND!RC!SYMBOL,ADD!GC!PUSHS,
                         REM!SYMBOL
     40000000            EMIT!MAIN!CODE,EMIT!CLEANUP!CODE,ERR!HLR,
                         EMIT!LOC!CODE,MAK!BLK!EMIT
    100000000            MAP!CK!ARGLIST,CHK!ARG!LIST
    200000000            PRT!NODE
/DEbug:OFF - disables debugging if previously enabled (default).
