Henry,

That was the problem! I was still using 8.04, and it apparently had a bug
in E. that causes it to fail on larger vector arguments. I updated to 8.05,
and it all works. Thanks Henry and Louis for all the help.

Skip



Skip Cave
Cave Consulting LLC

On Sun, Dec 18, 2016 at 9:56 PM, Henry Rich <[email protected]> wrote:

> I cannot reproduce this.  E. on numerics had a bug from 6.02 through 8.04;
> it was fixed (thanks to Tom Costigliola) early in the 8.05 betas.  Check
> your version.
>
> Henry Rich
>
>
> On 12/18/2016 10:21 PM, Skip Cave wrote:
>
>> Trying out match:
>>
>> match=: I.@:E.
>>
>>     7 30 $ sc
>>
>> 872 1000 886 988 920 936 930 946 944 1004 1016 962 962 1136 914 1004 962
>> 880 1022 946 944 1018 950 890 1000 1070 972 1026 980 978
>>
>> 946 944 1108 964 1002 878 956 966 1002 940 988 906 1028 988 1000 1046 980
>> 948 1158 716 946 892 950 904 1110 832 838 916 976 874
>>
>> 926 938 1038 986 1016 850 868 936 840 800 970 1090 810 866 922 824 884 894
>> 934 1108 958 902 858 878 832 916 1054 1012 908 794
>>
>> 846 1086 860 1046 956 924 928 1144 1004 792 984 986 1002 978 894 986 886
>> 872 1054 954 1002 1098 922 822 940 842 894 982 798 962
>>
>> 1102 942 906 1122 926 946 920 996 1076 976 1022 912 988 1006 998 858 974
>> 908 1018 964 910 946 940 948 1024 974 936 854 966 944
>>
>> 1026 950 898 980 904 944 976 936 840 1076 876 904 1114 874 974 920 888 846
>> 982 1068 940 1024 1036 956 796 884 1058 886 838 1030
>>
>> 890 988 824 940 1038 948 1034 882 1054 1062 884 964 948 1002 1036 790 1050
>> 960 1012 918 768 872 1000 886 988 920 936 930 946 944
>>
>>      sc1 =: , 7 30 $ sc
>>
>>      sc1
>>
>> 872 1000 886 988 920 936 930 946 944 1004 1016 962 962 1136 914 1004 962
>> 880 1022 946 944 1018 950 890 1000 1070 972 1026 980 978 946 944 1108 964
>> 1002 878 956 966 1002 940 988 906 1028 988 1000 1046 980 948 1158 716 946
>> 892 950 904 1110 832 838 916 976 87...
>>
>>      $sc1
>>
>> 210
>>
>>
>>      +/ 946 = sc1    How many 946's in sc1?
>>
>> 7
>>
>>      946 match sc1    NB. So we want to know where the 946's are.
>>
>>                              NB. What gives? match doesn't see the 7
>> matches!
>>
>>
>>      (sc1=946)#i.#sc1  NB. Try a different way.
>>
>> 7 19 30 50 125 141 208
>>
>>
>>      946 match 50 {. sc1   NB. Try a smaller list of integers with match.
>>
>> 7 19 30                         NB. That works.
>>
>>      946 match 100 {. sc1   NB. A little bigger works.
>>
>> 7 19 30 50
>>
>>      946 match 150 {. sc1   NB. Nope! match doesn't work on 150 integers.
>>
>>
>>     946 944 match 50 {. sc1   NB. Let's try matching a short list of two
>> integers
>>
>> 7 19 30                              NB. That works.
>>
>>      946 944 match 150 {. sc1
>>
>>                                           NB. That doesn't work.
>>
>>
>> It looks like match (I.@:E.) is limited to fairly small lists.
>>
>>
>> Skip
>>
>> Skip Cave
>> Cave Consulting LLC
>>
>> On Sun, Dec 18, 2016 at 3:38 PM, Henry Rich <[email protected]> wrote:
>>
>> match1 =: (#~ 1 < #@>)@:(]\ </. i.@((- <:)~ #))
>>>
>>>
>>> I changed the spec to produce a list of boxes, since there may be
>>> differing numbers of matches
>>>
>>> Henry Rich
>>>
>>>
>>>
>>> On 12/18/2016 3:32 PM, Skip Cave wrote:
>>>
>>> aa =: 2 3 4 5 4 3 2 5 6 7 6 5 4 3 2 3 4 5 4
>>>>
>>>> ----------------------------------------------------------------------
>>> 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