Oh well, I should have remembered that. I even replied to it. :-)


On 8 February 2016 at 00:17, Juergen Sauermann <
juergen.sauerm...@t-online.de> wrote:

> Hi Elias,
>
> great idea, except that it conflicts with the NARS APL interpreter which
> had defined
> Rank with axis already (and, of course, differently).
>
> See http://lists.gnu.org/archive/html/bug-apl/2014-07/msg00042.html
>
> /// Jürgen
>
>
> On 02/07/2016 01:31 PM, Elias Mårtenson wrote:
>
> How about implementing a non-conflicting extension? I'm suggesting the
> following form as an alternative:
>
>       Z ← f ⍤[j] B
>       Z ← A f ⍤[j] B
>
> Regards,
> Elias
>
>
> On 7 February 2016 at 20:27, Juergen Sauermann <
> juergen.sauerm...@t-online.de> wrote:
>
>> Hi Alex,
>>
>> not sure what   *a ¯3⍤< m*  is supposed to mean.
>>
>> According to the ISO standard the syntax for *⍤* is:
>>
>> *Z ← f ⍤ j B           *(monadic, page 124) or
>> *Z ← A f ⍤ j B         *(dyadic, page 125)
>>
>> If you compare that with your example:
>>
>> a ¯3 ⍤ < m
>>
>> then the (expected value) *j* is the primitive function *<*, which
>> triggers the *VALUE ERROR*.
>> The fact that the caret points to *a* is not because *a* is the culprit,
>> but because *a* is the left
>> end of the phrase being reduced.
>>
>> Unfortunately the syntax in the ISO standard is somewhat ambiguous:* j *is
>> a one, two, or three
>> element vector, and B is the rest. Therefore it is sometimes impossible
>> to decide where *j* ends
>> and where *B* begins, and the examples for *⍤* in the ISO standard are
>> in conflict with the IBM APL2
>> binding rules. This  conflict occurs only with *⍤* which - wise decision
>> - is not implemented at all
>> in IBM APL2.
>>
>> The conflict can be avoided by always putting *j* and *B *into separate
>> variables. If you use literals for *j*
>> or *B*, heaven forbid, then be prepared for fairly nasty error messages
>> at times.
>>
>> /// Jürgen
>>
>>
>>
>> On 02/06/2016 05:17 PM, alexwei...@alexweiner.com wrote:
>>
>>
>> Hi bug-apl,
>>
>> Why am I getting a value error here? It seems that the variable 'a'
>> definitely exists:
>>
>>       a←2 2 ⍴2
>>       m←4 4 ⍴⍳16
>>       a
>> 2 2
>> 2 2
>>       m
>>  1  2  3  4
>>  5  6  7  8
>>  9 10 11 12
>> 13 14 15 16
>>
>>
>>
>> VALUE ERROR
>>       a ¯3⍤<m
>>       ^
>>       a
>> 2 2
>> 2 2
>>
>>
>>
>>
>> SVN 693
>> -Alex
>>
>>
>>
>
>

Reply via email to