Except where noted these functions should have a significant subset of their Common Lisp functionality as defined in Steele [ 15 ].
Evaluates FORMs in order from left to right. If any FORM evaluates to NIL, returns immediately with the value NIL. Else, returns the value of the last FORM.
Constructs a new list by concatenating its arguments.
Conses all arguments but the last onto the last and applies FUNCTION to the resulting argument list. Last argument must be a list.
Prints symbols whose print-names contain STRING as substring. If STRING is a symbol its print name is used.
Returns, as a list, all symbols whose print-names contain STRING as substring. If STRING is a symbol its print name is used.
Returns the first pair in ALIST whose car is equal (in the sense of TEST) to ITEM.
Returns T if X is not a cons; NIL otherwise.
Returns T if the global variable named by SYMBOL has a value; NIL otherwise.
Returns the car of LIST. Returns NIL if LIST is NIL.
Evaluates KEYFORM and tries to find the KEY that is EQL to the value of KEYFORM. If one is found, then evaluates FORMs that follow the KEY and returns the value of the last FORM. If not, simply returns NIL.
Returns the cdr of LIST. Returns NIL if LIST is NIL.
Close file stream STREAM.
Coerces X to an object of the type TYPE.
Evaluates each TEST in order until one evaluates to a non-NIL value. Then evaluates the associated FORMs in order and returns the value of the last FORM. If no forms follow the TEST, then returns the value of the TEST. Returns NIL, if all TESTs evaluate to NIL.
Returns a new cons (list node) whose car and cdr are X and Y, respectively.
Returns T if X is a cons; NIL otherwise.
Defines a macro as the global definition of the symbol NAME. The complete syntax of a lambda-list is: (var* [&optional var*] [&rest var] [&aux var*]) The doc-string DOC, if supplied, is saved as a FUNCTION doc and can be retrieved by (documentation 'NAME 'function).
Defines a function as the global definition of the symbol NAME. The complete syntax of a lambda-list is: (var* [&optional var*] [&rest var] [&aux var*]) The doc-string DOC, if supplied, is saved as a FUNCTION doc and can be retrieved by (documentation 'NAME 'function).
Creates a NIL block, binds each VAR to the value of the corresponding INIT, and then executes STATEMENTs repeatedly until ENDTEST is satisfied. After each iteration, assigns to each VAR the value of the corresponding STEP. When ENDTEST is satisfied, evaluates RESULTs as a PROGN and returns the value of the last RESULT (or NIL if no RESULTs are supplied). Performs variable bindings and assignments all at once, just like LET does.
Just like DO, but performs variable bindings and assignments in serial, just like LET* and SETQ do.
Executes STATEMENTs, with VAR bound to each member of the list value of LISTFORM. Then returns the value of RESULT (which defaults to NIL).
Executes STATEMENTs, with VAR bound to each number between 0 (inclusive) and the value of COUNTFORM (exclusive). Then returns the value of RESULT (which defaults to NIL).
A can be a list or an array. If A is a list and INDICES is a single number then the appropriate element of A is returned. If is a list and INDICES is a list of numbers then the sublist of the corresponding elements is returned. If A in an array then the number of INDICES must match the ARRAY-RANK of A. If each index is a number then the appropriate array element is returned. Otherwise the INDICES must all be lists of numbers and the corresponding submatrix of A is returned. ELT can be used in setf.
Returns T if X and Y are the same identical object; NIL otherwise.
Returns T if X and Y are EQ, or if they are numbers of the same type with the same value, or if they are identical strings. Returns NIL otherwise.
Returns T if X and Y are EQL or if they are of the same type and corresponding components are EQUAL. Returns NIL otherwise. Arrays must be EQ to be EQUAL.
Returns T if (equal x y), or x, y are numbers and (= x y), or x and y are strings and (string-equal x y).
Equivalent to (CAR X).
Very basic implementation of Common Lisp format function. Only A, S, D, F, E, G, and G can take two.
Applies FUNCTION to the ARGUMENTs
Returns property value of INDICATOR in PLACE, or DEFAULT if not found.
Simply returns X.
If TEST evaluates to non-NIL, then evaluates THEN and returns the result. If not, evaluates ELSE (which defaults to NIL) and returns the result.
Returns the last cons in LIST
Returns the length of SEQUENCE.
Initializes VARs, binding them to the values of VALUEs (which defaults to NIL) all at once, then evaluates FORMs as a PROGN.
Initializes VARs, binding them to the values of VALUEs (which defaults to NIL) from left to right, then evaluates FORMs as a PROGN.
Returns T if X is either a cons or NIL; NIL otherwise.
FUNCTION must take as many arguments as there are sequences provided. RESULT-TYPE must be the either the symbol VECTOR or the symbol LIST. The result is a sequence of the specified type such that the i-th element of the result is the result of applying FUNCTION to the i-th elements of the SEQUENCEs.
Applies FUN to successive cars of LISTs. Returns the first LIST.
Applies FUN to successive cars of LISTs and returns the results as a list.
Applies FUN to successive cdrs of LISTs. Returns the first LIST.
Applies FUN to successive cdrs of LISTs and returns the results as a list.
Returns the tail of LIST beginning with the first ITEM.
Returns T if X is NIL; NIL otherwise.
Returns the N-th element of LIST, where the car of LIST is the zero-th element.
Returns the result of performing the CDR operation N times on LIST.
Returns T if X is NIL; NIL otherwise.
Returns T if X is any kind of number; NIL otherwise.
Returns T if X is an object, NIL otherwise.
Opens file named by string or symbol FNAME. DIRECTION is :INPUT or :OUTPUT.
Evaluates FORMs in order from left to right. If any FORM evaluates to non-NIL, quits and returns that value. If the last FORM is reached, returns whatever value it returns.
Prints OBJECT in the most readable representation. Returns OBJECT.
Prints OBJECT without escape characters. Returns OBJECT.
Outputs a newline character, and then prints OBJECT in the most readable representation. Returns OBJECT.
Binds VARs in parallel, and then executes STATEMENTs.
Binds VARs sequentially, and then executes STATEMENTs.
Evaluates FIRST and FORMs in order, and returns the value of FIRST.
Evaluates FIRST, SECOND, and FORMs in order, and returns the value of SECOND.
Evaluates FORMs in order, and returns whatever the last FORM returns.
Evaluates FORMs in order, with SYMBOLS dynamically bound to VALUES, and returns whatever the last FORM returns.
Adds NAME to the list of modules.
Reads and returns the next object from STREAM.
Combines all the elements of SEQUENCE using a binary operation FUNCTION. If INITIAL-VALUE is supplied it is logically placed before SEQUENCE.
Returns a copy of LIST with ITEM removed.
Returns a copy of LIST with elements satisfying TEST removed.
Returns a copy of LIST with elements not satisfying TEST removed.
Loads module NAME, unless it has already been loaded. If PATH is supplied it is used as the file name; otherwise NAME is used. If file NAME is not in the current directory *default-path* is searched.
Equivalent to (CDR X).
Returns from the lexically surrounding PROG construct. The value of RESULT, which defaults to NIL, is returned as the value of the PROG construct.
Returns a new list containing the same elements as LIST but in reverse order.
Equivalent to (CAR (CDR X)).
Assigns the value of VALUE to the dynamic variable named by SYMBOL (i. e. it changes the global definition of SYMBOL), and returns the value assigned.
Replaces the value in PLACE with the value of NEWVALUE, from left to right. Returns the value of the last NEWVALUE. Each PLACE may be any one of the following: * A symbol that names a variable. * A function call form whose first element is the name of the following functions: nth aref subarray sublist select elt get symbol-value symbol-plist documentation slot-value c?r c??r c???r c????r where '?' stands for either 'a' or 'd'.
VARs are not evaluated and must be symbols. Assigns the value of the first FORM to the first VAR, then assigns the value of the second FORM to the second VAR, and so on. Returns the last value assigned.
Returns print-name of SYM if SYM is a symbol, or SYM if SYM is a.
Returns T if X is a string; NIL otherwise.
Substitutes from ALIST for subtrees of TREE nondestructively.
Substitutes NEW for subtrees of TREE that match OLD.
Returns the print name of the symbol SYMBOL.
Returns the property list of SYMBOL.
Returns the current global value of the variable named by SYMBOL.
Returns T if X is a symbol; NIL otherwise.
Outputs a newline character.
Form is evaluated and its result returned. In addition the time required for the evaluation is printed.
Returns the type of X.
If TEST evaluates to NIL evaluates FORMs as a PROGN. If not, returns NIL.
Evaluates PROTECTED-FORM and returns whatever it returned. Guarantees that CLEANUP-FORMs be always evaluated before exiting from the UNWIND-PROTECT form.
If TEST evaluates to non-NIL evaluates FORMs as a PROGN. If not, returns NIL.
Anthony Rossini