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

Reply via email to