Class: Predicates for Determining Classes of Symbols

    $func? IsBox     e.Exp = ;
    $func? IsChannel e.Exp = ;
    $func? IsChar    e.Exp = ;
    $func? IsDigit   e.Exp = ;
    $func? IsFunc    e.Exp = ;
    $func? IsInt     e.Exp = ;
    $func? IsLetter  e.Exp = ;
    $func? IsString  e.Exp = ;
    $func? IsTable   e.Exp = ;
    $func? IsVector  e.Exp = ;
    $func? IsWord    e.Exp = ;

These functions provides a way to determine whether e.Exp is a symbol belonging to a certain class of symbol.

If e.Exp is not a single symbol, the functions return $fail(0).

If e.Exp is a symbol, the test is performed whether the symbol belongs to the corresponding class of symbols. If so, the value returned is an empty ground expression. Otherwise, the value returned is $fail(0).

The correspondence between the predicate functions and the sets of symbols is as follows.

IsBox - references to boxes.
IsChannel - references to channels.
IsChar - character symbols.
IsDigit - character symbols corresponding to decimal digits.
IsFunc - references to functions.
IsInt - references to integers.
IsLetter - character symbols corresponding to small and capital letters.
IsString - references to strings.
IsTable - references to tables.
IsVector - references to vectors.
IsWord - word symbols.