Linda wrote:
> But, it doesn't mean  f@g and [:f@g  can't be equivalent.

I think you meant f@g and [: f g can sometimes be equivalent (not [: f@g, which 
always produces a domain error, because you’re trying to execute [:, which 
cannot be executed).

Two points about that:

  1. f@g and [: f g are equivalent precisely when g has unbound (i.e. _) rank. 

Since so many primitive, and almost all compound, verbs have unbound rank, f@g 
is correspondingly frequently equivalent to [: f g .

  2. If you’re going to memorize a rule to keep you out of trouble, I would 
phrase it:  [: f g and f@:(g)  — with the parentheses! — are equivalent. 

That way, for example, you won’t get tripped up by the difference between  [: 
*: +/  and  *: @: +/  which are _not_ equivalent.  But  [: *: +/  and  *: @: 
(+/)  — with parentheses around g! — are.

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

Reply via email to