1. x v} y is NOT equivalent to x [`v`]} y. The difference is that the
former treats the result of the verb as atom numbers, the latter as item
numbers. Different parts of the array are being modified if items are
not atoms, i. e. if rank>1.
2. Already in x gerund} y you have the possibility that v1 can return
another gerund in the execution of (x v0 y) (x v1 y)} x v2 y. For the
record, I wanted to disallow this frivolity with a message '0C3 abend',
but was shouted down by users.
3. Enhancements to x v} y should not be expected.
Henry Rich
On 7/3/2019 10:34 AM, Raul Miller wrote:
Note also that if V is a verb which selects indices, X is new values
and Y is an array to merge, then:
X V} Y
is equivalent to
X [`V`]} Y
or to
X [`(V)`]} Y
It's not as concise, though. And, hypothetically, we might like to have:
merge=:2 :0
:
G=. X V Y
X G} Y
)
instead (in other words, it might be nice if X V} Y would have V
compute a gerund to be consumed by the } conjunction).
That said, since a gerund is never indices, I imagine that if we had a
use for this form, we could achieve that without having to sacrifice
the current behavior...
Thanks,
---
This email has been checked for viruses by AVG.
https://www.avg.com
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm