The routines in this section queue requests with an eval server. Requests are always satisfied in order, but these do not wait for notification that the operation actually happened. Because of this, the user can continue editing while his evaluation or compilation occurs. Note, these usually execute in the slave immediately, but if the interactive buffer connected to the slave is waiting for a form to return a value, the operation requested must wait until the slave is free again.
&key
:server :package :context
¶&key
:server :package :context
¶&key
:server :package
¶string-eval
queues the evaluation of the form read from string on eval
server server. Server defaults to the result of
get-current-server
, and string is a simple-string. The evaluation
occurs with package bound in the slave to the package named by
package, which defaults to Current Package or the empty string; the
empty string indicates that the slave should evaluate the form in its current
package. The slave reads the form in string within this context as well.
Context is a string to use when reporting start and end notifications in
the Echo Area buffer; it defaults to the concatenation of "evaluation
of "
and string.
region-eval
is the same as string-eval
, but context defaults
differently. If the user leaves this unsupplied, then it becomes a string
involving part of the first line of region.
region-compile
is the same as the above. Server defaults the same; it
does not default to get-current-compile-server
since this compiles the
region into the slave Lisp’s environment, to affect what you are currently
working on.
&key
:output-file :error-file :load :server :package
¶This compiles file in a slave Lisp. When output-file is t
(the
default), this uses a temporary output file that is publicly writable in case
the client is on another machine, which allows for file systems that do not
permit remote write access. This renames the temporary file to the appropriate
binary name or deletes it after compilation. Setting Remote Compile File
to nil, inhibits this. If output-file is non-nil and not t
, then it
is the name of the binary file to write. The compilation occurs with
package bound in the slave to the package named by package, which
defaults to Current Package or the empty string; the empty string
indicates that the slave should evaluate the form in its current package.
Error-file is the file in which to record compiler output, and a nil value
inhibits this file’s creation. Load indicates whether to load the
resulting binary file, defaults to nil. Server defaults to
get-current-compile-server
, but if this returns nil, then server
defaults to get-current-server
.