After the verb @ gerund behavior was decommissioned in J5, I wrote a utility to 
emulate it. As a use case for the utility, I implemented an adverb which lets 
you apply successive verbs (a gerund) to a corresponding list of nouns.  The 
underlying mechanism is ;. (similar to the /. approach Thomas outlined, but a 
little more flexible).

More details here:  http://www.jsoftware.com/jwiki/DanBron/Snippets/DOOG  . 
Caveat: I haven't tested this with J7 - in fact, I haven't even run it in years.

-Dan

-----Original Message-----
From: [email protected] 
[mailto:[email protected]] On Behalf Of bob therriault
Sent: Wednesday, January 23, 2013 5:06 PM
To: [email protected]
Subject: Re: [Jprogramming] applying >1 gerunds to a set of items

Thomas,

Funny how you see what you want to see, when you think you have a solution :)

How about this:

   <"0@|:@(+:`*:`%/.)  3 4 5
+-+--+---+
|6|16|0.2|
+-+--+---+

or if no boxing required:

   |:@(+:`*:`%/.)  3 4 5
6 16 0.2

I agree that it is not quite as clean as it used to be.

Cheers, bob

On 2013-01-23, at 1:29 PM, Thomas Costigliola wrote:

> On Wed, Jan 23, 2013 at 4:05 PM, bob therriault <[email protected]>wrote:
> 
>> Nice Thomas,
>> 
>> I had not thought of oblique.
>> 
>> You can still do this, although it is clunkier:
>> 
>> <@(+:`*:`%/.) 3 4 5
>> +---+
>> |  6|
>> | 16|
>> |0.2|
>> +---+
>> 
> 
> I was hoping to box each row as you attempted below...
> 
> 
>>   <@(+:`*:`%/."0) 3 4 5
>> +-+-+--+
>> |6|8|10|
>> +-+-+--+
>> 
>> or better,
>> 
>> +:`*:`%/. each 3 4 5  NB. each  is &.>
>> +-+-+--+
>> |6|8|10|
>> +-+-+--+
>> 
>> 
>> 
> ... but these don't work correctly. If you look at the output it  
> doesn't match your first example. +:`*:`%/. applies at rank zero, so 
> each application applies the whole gerund to just one item, the result 
> being only the first gerund gets executed each time.
> 
> I have not found any elegant way to recreate the old way of 
> distributing a verb across a gerund except by hand.
> 
>   (+:e)`(*:e)`(%e)/. 1 2 3
> ┌────────┐
> │2       │
> ├────────┤
> │4       │
> ├────────┤
> │0.333333│
> └────────┘
> 
> 
> Cheers, bob
>> 
>> On 2013-01-23, at 12:51 PM, Thomas Costigliola wrote:
>> 
>>> <@(+:`*:`%)/. 3 4 5
>> 
>> ---------------------------------------------------------------------
>> - For information about J forums see 
>> http://www.jsoftware.com/forums.htm
>> 
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm

----------------------------------------------------------------------
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