A problem with 1 _ _1 -: i.b.0 is that the effective rank of i. is actually never less than zero.
In other words: positive (and zero) ranks are taken literally. Negative ranks are not taken literally (and always wind up being non-negative in effect when used). Thanks, -- Raul On Tue, Aug 8, 2017 at 4:15 AM, Louis de Forcrand <ol...@bluewin.ch> wrote: > 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 <henryhr...@gmail.com> 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" <rauldmil...@gmail.com> 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 <ol...@bluewin.ch> >>> 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 <rauldmil...@gmail.com> 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 <ol...@bluewin.ch> >>> 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 ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm