Procedure: apply
proc
[arg1
...
] args
Args
must be a sequence (list, vector, or string) or a primitive Java array. (This is an extension over standard Scheme, which requires thatargs
be a list.) Calls theproc
(which must be a procedure), using as arguments thearg1
... values plus all the elements ofargs
.
Syntax: constant-fold
proc
arg1
...
Same as
(
, unlessproc
arg1
...)proc
and all the following arguments are compile-time constants. (That is: They are either constant, or symbols that have a global binding and no lexical binding.) In that case,proc
is applied to the arguments at compile-time, and the result replaces theconstant-fold
form. If the application raises an exception, a compile-time error is reported. For example:(constant-fold vector 'a 'b 'c)is equivalent to
(quote #(a b c))
, assumingvector
has not been re-bound.