Execute Expression R←X(85⌶)Y
Executes an expression.
Y
is a character vector containing an APL expression.
The function executes the expression in Y
exactly as it would be executed by the monadic Execute primitive function ⍎
, but handles shy results of the execution rather differently.
The left argument X
determines how a shy result from the execution of Y
is treated and is either 0 or 1.
If X
is 1, and the expression in Y
returns an explicit result, R
is that result. If the expression in Y
returns no result or returns a shy result, the function signals ERROR 85
. Effectively, a shy result is discarded.
If X
is 0, and the expression in Y
returns an explicit result or a shy result, R
is that result (but is no longer shy). If the expression in Y
returns no result, the function signals ERROR 85
.
Examples
⍎'a←42'
⎕← ⍎'a←42' ⍝ shy result
42
0 (85⌶) 'a←42' ⍝ not shy
42
1 (85⌶) 'a←42'
ERROR 85
1(85⌶)'a←42'
∧