previous  next
4.2.4. Other Help
1. A user may provide help and sometimes (rarely) get help for a
user-defined function using the 'Help' feature of the 'Define'
command.

Example

Help();
Type Help < Op > to get help on operator < Op >
-------------------------------
Help('GBasis');  -- note the typical response, one of the main
                 -- motivations for the author of the online manual.
No help available for GBasis
-------------------------------

2. The command, 'Describe', can be used to find more information about
functions.   

Example

Describe Function('Insert');
DEFINE Insert(L,I,O)
  $cocoa/list.Insert(L,I,O)
END
-------------------------------
Describe Function('$cocoa/list.Insert');
DEFINE Insert(L,I,O)
  IF NOT(Type(L) = LIST) THEN 
    Return(Error(ERR.BAD_PARAMS,": expected LIST"))
  ELSIF I = Len(L) + 1 THEN 
    Append(L,O)
  ELSIF I > Len(L) THEN 
    Return(Error(ERR.INDEX_TOO_BIG,I))
  ELSIF I <= 0 THEN 
    Return(Error(ERR.INDEX_NEG,I))
  ELSE 
    L := Concat([L[J]|J IN 1..(I - 1)],[O],[L[J]|J IN I..Len(L)]); 
  END; 
END
-------------------------------


3. The function, 'Functions', may be used to list all functions in a
package.  Note: 'Functions('$cocoa/user')' lists all current
user-defined functions.  

Example

Functions('$cocoa/mat');
[About(), Man(), Identity(N), Transposed(M), Submat(M,Rows,Cols),
Jacobian(S), Resultant(F,G,X), DirectSum(M1,M2), BlockMatrix(LL),
ColumnVectors(M), Complement(M,I,J), Bip(M,J), Pfaffian(M),
Sylvester(F,G,X), ExtendRows(M,N), PushRows(M,N), ConcatRows(L),
PkgName()]
-------------------------------

The list of packages is given by 'Packages()'.

4. The function 'Starting(S)' where S is a string returns a list of all
functions starting with the string S.

Example

Starting('Su');
["SubstPoly", "SubSet", "Submat", "Sum", "Subst", "Support"]
-------------------------------