I don’t quite see what you’re pointing out. You must’ve misunderstood me, or more probably I have misunderstood you.
To clarify: what I meant was that I was surprised because I expected (-r) -: v”(-r)b.0 and therefor (-r) -: u@(v”(-r))b.0 and by extension u to be applied to each result of v applied to each (-r)-cell of the argument. Now that I know J pretty well, another thing that surprises me along with this is that all the intrinsic verb ranks are all positive. This is I guess to be consistent with @ and others’ treatment of negative rank, but wouldn’t it be logical to have for example 1 _ _1 -: i.b.0 ? Thanks for your answers. Louis > On 08 Aug 2017, at 03:27, Henry Rich <[email protected]> wrote: > > If negative rank passed through compounds, consider what the result of > > ]@(#"_1) i.2 3 > > would be. > > Henry Rich > > On Aug 8, 2017 00:49, "Raul Miller" <[email protected]> wrote: > >> Negative rank is a convention - it means the rank is relative to the >> noun rank. I'm not sure what a rank less than 0 would mean otherwise. >> >> Thanks, >> >> -- >> Raul >> >> On Mon, Aug 7, 2017 at 7:15 PM, Louis de Forcrand <[email protected]> >> wrote: >>> I see. So negative ranks are sort of placeholders, and are replaced by >>> positive (effective) ranks internally during evaluation? >>> Because it could just announce its rank to be negative, and not actually >>> calculate the effective rank until it is really needed (a lazier >> effective rank >>> evaluation if you will): >>> >>> x u”_1/ y <-> x u”_1”_1 _ y NB. evaluate effective rank here >>> <-> x u”_1”((0>.(#$x)-1) , _) y NB. and here >>> <-> x 4 : ‘x u”((0>.(#$x)-1),(0>.(#$y)-1)) y'”((0>.(#$x)-1) , _) y >>> >>> instead of >>> >>> x u”_1/ y NB. just here >>> <-> x 4 : ‘x u”((0>.(#$x)-1),(0>.(#$y)-1)) y’/ y >>> >>> What I mean is that I would’ve made v=: u“r with r<0 report rank r, and >> if an >>> operator needs to know the rank of v, then just feed it r and let it >> deal with >>> calculating the effective rank. >>> >>> Of course their are probably implementation limitations which I do not >> know of. >>> >>> Thanks for your explanation! >>> >>> Louis >>> >>>> On 07 Aug 2017, at 18:29, Raul Miller <[email protected]> wrote: >>>> >>>> The rank of +"_1 is infinite because the derived verb has to see the >>>> full ranks of its arguments to figure out what rank to use for the >>>> inner verb. >>>> >>>> In other words, -"_1 in -"_1 i.3 3 has an effective rank of 1, but in >>>> -"_ i.3 it has an effective rank of 0. >>>> >>>> Since it can't know what rank to use until after it sees the nouns, >>>> its announced rank has to be infinite. >>>> >>>> Thanks, >>>> >>>> -- >>>> Raul >>>> >>>> >>>> On Mon, Aug 7, 2017 at 4:40 PM, Louis de Forcrand <[email protected]> >> wrote: >>>>> +"0/~ i.3 >>>>> 0 1 2 >>>>> 1 2 3 >>>>> 2 3 4 >>>>> +"_1/~ i.3 >>>>> 0 2 4 >>>>> +"0 b.0 >>>>> 0 0 0 >>>>> +"_1 b.0 >>>>> _ _ _ >>>>> >>>>> I understand that this is dictionary compliant: >>>>> >>>>> "In general, each cell of x is applied to the entire of y . Thus x u/ >> y is equivalent to x u"(lu,_) y where lu is the left rank of u ." >>>>> >>>>> +"_1 b.0 >>>>> _ _ _ >>>>> >>>>> So u"_1/ -: u"_ _ . Wouldn’t it be better though if u"_1/ -: u"_1 _ , >>>>> or if (u”_1 b.0) -: _1 _1 _1 (or any other negative rank)? >>>>> I ran into this while trying to use ,"_1/ , which I can replace by >>> @{@,&< , >>>>> but I still find this strange. >>>>> >>>>> Louis >>>>> >>>>> ---------------------------------------------------------------------- >>>>> 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 > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
