[x] u^:v y executes [x] v y to get a noun operand to ^: . But v might
return a gerund, in which case that gerund will be executed. It could
return a gerund too, leading to a stack error or a crash.
I have fixed it so that if the execution of the gerund returns a gerund,
it is treated as domain error. There are still some loopholes, though.
To close them, I would like to say that it is a domain error for the
original v to return a gerund. I can't think of any reason v should
return a gerund. Does anybody know of an actual use of this in real code?
Instead of a domain error, I could report 'execute error' or '0C3
abend', clear as a bell to us old-timers.
Henry Rich
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm