eX version 0.4b User's Manual                         File eXMan18.txt
(C) Copyright 1995, 1996 William E. Wilgus III.   All rights reserved.


Status Functions

cLevel
                         cLevel plane#
     Returns the current level for the argument plane.  It isn't
     assignable.  

cLoop
     Returns the current loop number.  It does not take an argument
     and is not assignable.  

cMacro
     Returns the number of the currently executing macro.  It does not
     take an argument and is not assignable.  


cPlane
     Returns the current plane.  It does not take an argument and is
     not assignable.  

eXver
     Returns the version of eX as a string. 

eXword
                              eXword eev
     Returns the identity of an eX word.  If the argument given is
     numeric, the word is returned.  If the argument given is a
     string, its number is returned.  Invalid arguments return the
     null string ("") or 0.  See also `eXwords'. 

eXwords
     Returns the number of eX words in the version. 

fLevel
     Returns the level for the current function, which is not 
     necessarily the same level as its argument.  It is not
     assignable and does not take an argument.  

     Given that the current plane is 1 and the current level for that
     plane is 0, in  

                         @(eev#, fLevel)

     fLevel returns 0; and in this case fLevel is equal to 
                          cplane - 1.
     But note that since fLevel is not sequential in nature, 
     arithmetic manipulations of it may not yield the desired results.


fPlane
     Returns the plane for the current function, which is not  
     necessarily the same plane its argument.  It is not assignable
     and does not take an argument.  Given that the current plane is
     1, in  
    
                         @('|2 fPlane, |' eev#)

     fPlane returns 1.  But note that as fPlane is not sequential in
     nature, arithmatic  manipulations of it may not always yield the
     desired results.  

FreeMacros
     Returns the number of macro data entities that are available,
     i.e. contain no macro.

FreeMem
                              FreeMem<<$>>
     Returns the number of bytes of memory available to eX that are
     currently not utilized.  If the string suffix `$' is used, the
     number of bytes available for string values is returned.  
     Otherwise, the number of bytes that are available for all data
     entity identifiers and numeric values is returned, which is
     somewhat more than the number of bytes available to run programs
     via the eX word `os'.  

iArg
                    iArg number# <<:= eev$>>
     Returns the value of invocation argument number#, which is always
     a string and no more than 64 characters in length.  It is
     assignable.  See also `iArgs', `LastiArg' in this section; and the eX
     command / (invocation arguments).       

iArgs
                         iArgs <<:= eev#>>
     Returns the number of invocation arguments given in the eX
     invocation command.  It's assignable to enhance macro flexibility
     and re-usability.  See also `iArg', `LastiArg' in this section; and
     the eX command / (invocation arguments).

LastiArg
     Returns the number of invocation arguments allocated.  The
     default is 10. 

LastVar
                         LastVar eev
     Returns the number of variables that currently exist in the
     argument variable type, which may be given either as a string
     that is a  variable type prefix, or as a numeric variable type.

                     _        2
                    __        3
                     .        4
                    ..        5
                     $        6

lCount
                    lCount<<(LoopNumber#)>> <<:= eev#>>
     Returns the loop count (iterations) of the specified loop.  If
     the argument is omitted, it returns the count of the current
     loop.  It is assignable and the un-parenthesized form is not allowed.

levels
     Returns the current upper bound of the level (minor) dimension of
     the accumulator arrays.  It does not take an argument and is not
     assignable.  

loops
     Returns the number of loops that have been allocated.  

lTruth
                    lTruth<<(LoopNumber#)>> <<:= eev#>>
     Returns the truth of the specified loop.  If the argument is
     ommitted, the truth of the current loop is returned.  It is
     assignable and the un-parenthesized argument form is not allowed.


MacId
                         MacId eev
     Returns the identity for the argument macro.  If the macro
     identifier is given, returns the macro number.  If a macro number
     is given, returns the macro name.  It is not assignable.  

macros
     Returns the number of macros that have been allocated.  

mPos
                              mPos eev
     Returns the current execution position for the specified macro as
     the byte (character) number from the beginning of the macro.  A
     macro identifier or a macro number argument may be given.  It is
     not assignable and not very useful to an eX user.  (I never
     have.)

planes
     Returns the current upper bound of the plane (major) dimension of
     the accumulator arrays.  It does not take an argument and is not
     assignable.  

VarId
                    VarId VariableIdentifier
     Returns both the Variable Type Number and the Variable Identifier
     of the variable reference argument, which may be given as either
     an identifier or a variable type number. 

vars
                              vars eev
     Returns the number of variables that are currently allocated for
     the argument variable type, which may be given either as a string
     that is a variable type prefix or as a numeric variable type:

                     _        2
                    __        3
                     .        4
                    ..        5
                     $        6
