p j wrote:
> I was implying that x and y were nouns, h f g verbs.
> assuming that x g y produces a noun (almost
> guaranteed)

The result of a verb is always a noun.  But you're right
that if there's not result (for example: when there's
an error), no noun is produced.

> then is:
> (h x f@:g y) -: (h f) (x g y) -: (x g y) h (f (x g y))

No.  (Try it.)

Issues include
 -: produces a result which is typically different from its
arguments.  I'd instead use   IS=: ] [ [EMAIL PROTECTED]:

 (h f) (x g y) is not the left argument for the rightmost -:
I'd instead use ((h f) x g y)

If x and y are nouns, the monadic definition of h is used in the
left-most expression while the dyadic definition of h is
used in the other expressions. 

Come to think of it, I was wrong when I said that 
     (h x f@:g y) -: (h f) (x g y)
was a tautology.  I'm wrong there because the
left argument for h on the left hand side of
the -: is not x g y -- the left argument of h
is whatever is specified by the user (without
being processed by any of the verbs in this expression).

These look right
(h x f@:g y) IS (h f x g y) IS (h(f(x(g)y))) IS (h(x(f@:g)y))

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

Reply via email to