The command processor keeps track of a current focus value.
This value is normally the last value returned by a command.
If a command returns multiple values the focus object is a list of the
values.
The focus value is not changed if a command returns no values or
a distinguished `unspecific' value.
Examples of forms that return this unspecific value are definitions,
uses of set!
, and (if #f 0)
.
It prints as #{Unspecific}
.
The reader used by the command processor reads ##
as a special
expression that evaluates to the current focus object.
> (list 'a 'b) '(a b) > (car ##) 'a > (symbol->string ##) "a" > (if #f 0) #{Unspecific} > ## "a" >
Previous: Command processor | Next: Command levels