EVALUATION FUNCTIONS
EVALUATE AN XLISP EXPRESSION
(eval <expr>)
- <expr> the expression to be evaluated
- returns the result of evaluating the expression
APPLY A FUNCTION TO A LIST OF ARGUMENTS
(apply <fun> <arg>...<args>)
- <fun> the function to apply (or function symbol). May not be macro or fsubr.
- <arg> initial arguments, which are CONSed to...
- <args> the argument list
- returns the result of applying the function to the arguments
CALL A FUNCTION WITH ARGUMENTS
(funcall <fun> <arg>...)
- <fun> the function to call (or function symbol). May not be macro or fsubr.
- <arg> arguments to pass to the function
- returns the result of calling the function with the arguments
RETURN AN EXPRESSION UNEVALUATED
(quote <expr>)
fsubr
- <expr> the expression to be quoted (quoted)
- returns <expr> unevaluated
GET THE FUNCTIONAL INTERPRETATION
(function <expr>)
fsubr
- <expr> the symbol or lambda expression (quoted)
- returns the functional interpretation
MAKE A COMPLEMENTARY FUNCTION
(complement <fun>)
This function is intended to eliminate the need for -IF-NOT functions and :TEST-NOT keys by providing a way to make complementary functions.
- <fun> the function or closure (not macro or fsubr)
- returns a new function closure that returns NOT of the result of the original function.
RETURN THE EXPRESSION
(identity <expr>)
- <expr> the expression
- returns the expression
FILL IN A TEMPLATE
(backquote <expr>)
fsubr. Note: an improved backquote facility, which works properly when nested, is available by loading the file backquot.lsp.
- <expr> the template (quoted)
- returns a copy of the template with comma and comma-at expressions expanded.
COMMA EXPRESSION
(comma <expr>)
(Never executed) As the object of a backquote expansion, the expression is evaluated and becomes an object in the enclosing list.
COMMA-AT EXPRESSION
(comma-at <expr>)
(Never executed) As the object of a backquote expansion, the expression is evaluated (and must evaluate to a list) and is then spliced into the enclosing list.
MAKE A FUNCTION CLOSURE
(lambda <args> <expr>...)
fsubr
- <args> formal argument list (lambda list) (quoted)
- <expr> expressions of the function body (quoted)
- returns the function closure
GET THE LAMBDA EXPRESSION
(get-lambda-expression <closure>)
- <closure> the closure
- returns the original lambda expression, or NIL if not a closure. Second return value is T if closure has a non-global environment, and the third return value is the name of the closure.
RECURSIVELY EXPAND MACRO CALLS
(macroexpand <form>)
- <form> the form to expand
- returns the macro expansion
EXPAND A MACRO CALL
(macroexpand-1 <form>)
- <form> the macro call form
- returns the macro expansion
XLISP-PLUS - Version 2.1g - Tom Almy
tom.almy@tek.com - 18 JUL 94
Generated with WebMaker