The 2nd easiest fix would be to raise a stack error and have a low stack depth 
(maybe just 1) for the result of v (in u^:v).  Its cool that there is a v and 
not just n option.

In terms of imagination,

v can be an explicit function (less hard to return a gerund) that queries state 
as well as x and y to form a gerund.  It can be as simple a need as to set part 
of the gerund in an if statement, which has to be done through a ^:v approach.

> Similarly in the forms u^:[v0]`v1`v2, ([x] v1 y) may not produce a

gerund.

This one I think has no controversy.  in u^:v, v has all the information needed 
to produce a final gerund.  If v needs/wants to only create part of a gerund it 
can be called as:

u^:(v0`v1 , v) or  

u^:('`v1`v2'&v)

and so the gerund component producing a gerund can be forbiden without 
preventing "sophistication" of computing the initial gerund.




----- Original Message -----
From: chris burke <[email protected]>
To: Source forum <[email protected]>
Sent: Wednesday, May 11, 2016 10:02 PM
Subject: [Jsource] In u^:v, v may not return a gerund (proposal)

---------- Forwarded message ----------
From: Henry Rich <[email protected]>
Date: 8 May 2016 at 12:17
Subject: In u^:v, v may not return a gerund (proposal)
To: [email protected]


I am working on an old problem:

f^:] 0&]`]

crashes, because executing ] creates a gerund, which executes to produce
the same gerund, etc.

The easiest fix is to decree that in u^:v, ([x]v y) may not produce a
gerund.  Similarly in the forms u^:[v0]`v1`v2, ([x] v1 y) may not produce a
gerund.

Anybody got a problem with that?  I can't think of any case where creating
a gerund makes any sense at all.

Henry
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm 
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to