@@ -7,8 +7,6 @@ NB. test failed on small ct
77ct =: 9 !: 18 ' '
889 !: 19 [ 2 ^ _40
99
10- ' NaN error' -: + / etx _ __ NB. smoke test
11-
1210insert =: 1 : '{. ` ({. u $:@}.) @. (1&<@#)' NB. one or more items
1311
1412(= / t) -: = insert t=: 20 ? @ $ 2
@@ -697,17 +695,6 @@ iota =: > @ (+/&.>/) @ (i.&.> *&.> */\.@}.@(,&1))
697695(($ x),$ y) -: $ (x=:i. 0 ) ^ / y=:i. 0
698696(($ x),$ y) -: $ (x=:i. 0 ) ^ !. 0 / y=:i. 0
699697
700- NB. f/ NaN --------------------------------------------------------------
701-
702- ' NaN error' -: + / etx (_ __ ([ )` (2 ? # @ ] )` ] } ] ) (2 + ? 100 ) ? @ $ 0
703- ' NaN error' -: + / etx ((,. _ __) ([ )` ([: < 2 1 < @ ? $ @ ] )` ] } ] ) (2 + ? 50 50 ) ? @ $ 0
704- ' NaN error' -: + / " 2 etx ((,. _ __) ([ )` ([: < 1 2 1 < @ ? $ @ ] )` ] } ] ) (2 + ? 4 50 50 ) ? @ $ 0
705-
706- ' NaN error' -: - / etx (_ __ ([ )` (2 * 2 ? <. @: -: @: # @ ] )` ] } ] ) (4 + ? 100 ) ? @ $ 0
707- ' NaN error' -: - / etx ((,. _ __) ([ )` ([: < 2 * &. > 2 1 < @ ? <. @: -: @: $ @ ] )` ] } ] ) (4 + ? 50 50 ) ? @ $ 0
708- ' NaN error' -: - / " 2 etx ((,. _ __) ([ )` ([: < 2 * &. > 1 2 1 < @ ? <. @: -: @: $ @ ] )` ] } ] ) (4 + ? 4 50 50 ) ? @ $ 0
709-
710-
711698NB. +/ Magic Cubes -----------------------------------------------------
712699
713700NB. by Professor James G. Mauldon via Ken Iverson
@@ -729,112 +716,18 @@ test 11
729716test 23
730717test 29
731718
732- NB. Fold F. F.. F.: F: F:. F:: ------------------------------------------------------------------
733- NB. monad
734- 10 -: ] F.. + i. 5
735- 10 -: ] F.: + i. 5
736- 2 -: ] F.. - i. 5
737- 2 -: ] F.: - i. 5
738- 1 3 6 10 -: ] F:. + i. 5
739- 7 9 10 10 -: ] F:: + i. 5
740- 1 1 2 2 -: ] F:. - i. 5
741- _1 3 _2 2 -: ] F:: - i. 5
742- NB. dyad
743- 110 -: 100 ] F.. + i. 5
744- 110 -: 100 ] F.: + i. 5
745- _98 -: 100 ] F.. - i. 5
746- _98 -: 100 ] F.: - i. 5
747- 100 101 103 106 110 -: 100 ] F:. + i. 5
748- 104 107 109 110 110 -: 100 ] F:: + i. 5
749- _100 101 _99 102 _98 -: 100 ] F:. - i. 5
750- _96 99 _97 98 _98 -: 100 ] F:: - i. 5
751- NB. Using v
752- 315 339 381 441 519 -: (6 ; 100 101 102 ) (+ / @: ; ) F:. ((, 0 & {:: ) ; (+ 1 & {:: )) i. 5 3
753- 387 447 489 513 519 -: (6 ; 100 101 102 ) (+ / @: ; ) F:: ((, 0 & {:: ) ; (+ 1 & {:: )) i. 5 3
754- NB. early termination
755- 9 21 42 -: (6 ; 100 101 102 ) (+ / @: (0 & {:: ) [ _2 Z: 9 e. 0 & {:: ) F:. ((, 0 & {:: ) ; (+ 1 & {:: )) i. 5 3
756- 9 21 72 111 -: (6 ; 100 101 102 ) (+ / @: (0 & {:: ) [ _1 Z: 42 = [: + / 0 & {:: ) F:. ((, 0 & {:: ) ; (+ 1 & {:: )) i. 5 3
757- 9 21 72 111 -: (6 ; 100 101 102 ) (+ / @: (0 & {:: ) [ 0 Z: 42 = [: + / 0 & {:: ) F:. ((, 0 & {:: ) ; (+ 1 & {:: )) i. 5 3
758- 9 21 42 -: (6 ; 100 101 102 ) (+ / @: (0 & {:: ) [ 1 Z: 42 = [: + / 0 & {:: ) F:. ((, 0 & {:: ) ; (+ 1 & {:: )) i. 5 3
759- NB. early termination in u
760- 9 21 42 -: (6 ; 100 101 102 ) (+ / @: (0 & {:: )) F:. (([ _2 Z: 9 e. 0 & {:: )@: ((, 0 & {:: ) ; (+ 1 & {:: ))) i. 5 3
761- 9 21 51 90 -: (6 ; 100 101 102 ) (+ / @: (0 & {:: )) F:. (([ _1 Z: 42 = [: + / 0 & {:: )@ ((, 0 & {:: ) ; (+ 1 & {:: ))) i. 5 3
762- 9 21 72 111 -: (6 ; 100 101 102 ) (+ / @: (0 & {:: )) F:. (([ 0 Z: 42 = [: + / 0 & {:: )@ ((, 0 & {:: ) ; (+ 1 & {:: ))) i. 5 3
763- 9 21 42 -: (6 ; 100 101 102 ) (+ / @: (0 & {:: )) F:. (([ 1 Z: 42 = [: + / 0 & {:: )@ ((, 0 & {:: ) ; (+ 1 & {:: ))) i. 5 3
764- NB. check uncaught throw
765- dbr 1
766- 9 21 42 -: (6 ; 100 101 102 ) (+ / @: (0 & {:: )) F:. (([ _2 Z: 9 e. 0 & {:: )@: ((, 0 & {:: ) ; (+ 1 & {:: ))) i. 5 3
767- 9 21 51 90 -: (6 ; 100 101 102 ) (+ / @: (0 & {:: )) F:. (([ _1 Z: 42 = [: + / 0 & {:: )@ ((, 0 & {:: ) ; (+ 1 & {:: ))) i. 5 3
768- 9 21 72 111 -: (6 ; 100 101 102 ) (+ / @: (0 & {:: )) F:. (([ 0 Z: 42 = [: + / 0 & {:: )@ ((, 0 & {:: ) ; (+ 1 & {:: ))) i. 5 3
769- 9 21 42 -: (6 ; 100 101 102 ) (+ / @: (0 & {:: )) F:. (([ 1 Z: 42 = [: + / 0 & {:: )@ ((, 0 & {:: ) ; (+ 1 & {:: ))) i. 5 3
770- dbr Debug
771- NB. empty results
772- ' domain error' -: (6 ; 100 101 102 ) (+ / @: (0 & {:: ) [ _2 Z: 6 e. 0 & {:: ) F:. ((, 0 & {:: ) ; (+ 1 & {:: )) etx i. 5 3
773- NB. empty arguments
774- 0 -: ] F.. + i. 0
775- 1 -: ] F.. * i. 0
776- ' domain error' -: ] F:. + etx i. 0
777- ' domain error' -: ] F:. * etx i. 0
778- 0 0 0 -: ] F.. + i. 0 3
779- 1 1 1 -: ] F.. * i. 0 3
780- ' domain error' -: ] F:. + etx i. 0 3
781- ' domain error' -: ] F:. * etx i. 0 3
782- ' domain error' -: ] F.. $ etx i. 0
783-
784- NB. one item
785- 999 -: + / F.. (, ~ ) 999
786- (0 $ 0 ) -: + / F:. (, ~ ) 999
787- 999 -: + / F.. (, ~ ) , 999
788- (0 $ 0 ) -: + / F:. (, ~ ) , 999
789- 999 -: ] F.. (, ~ ) 999
790- (0 $ 0 ) -: ] F:. (, ~ ) 999
791- 999 -: ] F.. (, ~ ) , 999
792- (0 $ 0 ) -: ] F:. (, ~ ) , 999
793- 9 -: + / F.. (, ~ ) ,: 2 3 4
794- (0 $ 0 ) -: + / F:. (, ~ ) ,: 2 3 4
795- 2 3 4 -: ] F.. (, ~ ) ,: 2 3 4
796- (0 3 $ 0 ) -: ] F:. (, ~ ) ,: 2 3 4
797-
798- NB. one item - dyad
799- 999 -: 999 + / F.. (, ~ ) ' '
800- (0 $ 0 ) -: 999 + / F:. (, ~ ) ' '
801- 999 -: (, 999 ) + / F.. (, ~ ) ' '
802- (0 $ 0 ) -: (, 999 ) + / F:. (, ~ ) ' '
803- 999 -: 999 ] F.. (, ~ ) ' '
804- (0 $ 0 ) -: 999 ] F:. (, ~ ) ' '
805- (, 999 ) -: (, 999 ) ] F.. (, ~ ) ' '
806- (0 1 $ 0 ) -: (, 999 ) ] F:. (, ~ ) ' '
807- 9 -: 2 3 4 + / F.. (, ~ ) ' '
808- 2 3 4 -: 2 3 4 ] F.. (, ~ ) ' '
809- 2 3 4 -: 2 3 4 ] F.. (, ~ ) ' '
810- 2 3 4 -: 2 3 4 ] F.. (, ~ ) ' '
811- (0 $ 0 ) -: 2 3 4 + / F:. (, ~ ) ' '
812- (0 $ 0 ) -: 2 3 4 + / F:. (, ~ ) ' '
813- (0 3 $ 0 ) -: 2 3 4 ] F:. (, ~ ) ' '
814- (0 3 $ 0 ) -: 2 3 4 ] F:. (, ~ ) ' '
815-
816-
817- NB. F. F:
818- 102 51 154 77 232 116 58 29 88 44 22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 -: ([ _2 Z: 1 = {: ) F. (, -: ` (1 3 & p. )@. (2 & | )@ {: ) 102
819- 51 154 77 232 116 58 29 88 44 22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 -: (([ _2 Z: 1 = ] )@ {: ) F: (, -: ` (1 3 & p. )@. (2 & | )@ {: ) 102
820- 102 51 154 77 232 116 58 29 88 44 22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 -: ([ _2 Z: 1 = {: [ _1 Z: 88 = {: ) F. (, -: ` (1 3 & p. )@. (2 & | )@ {: ) 102
821- 51 154 77 232 116 58 29 44 22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 -: (([ _2 Z: 1 = ] [ _1 Z: 88 = {: )@ {: ) F: (, -: ` (1 3 & p. )@. (2 & | )@ {: ) 102
822- 102 51 154 77 232 116 58 29 88 44 22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 -: ([ _2 Z: 1 = {: ) F. (([ 0 Z: 88 = {: )@ (, -: ` (1 3 & p. )@. (2 & | )@ {: )) 102
823- 51 154 77 232 116 58 29 44 22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 -: (([ _2 Z: 1 = ] )@ {: ) F: (([ 0 Z: 88 = {: )@ (, -: ` (1 3 & p. )@. (2 & | )@ {: )) 102
824- 102 51 154 77 232 116 58 29 -: ([ 0 Z: 88 = {: ) F. (([ 1 Z: 88 = {: )@ (, -: ` (1 3 & p. )@. (2 & | )@ {: )) 102
825- 51 154 77 232 116 58 29 -: (([ 0 Z: 88 = ] )@ {: ) F: (([ 1 Z: 88 = {: )@ (, -: ` (1 3 & p. )@. (2 & | )@ {: )) 102
826- NB. empty result
827- ' domain error' -: ([ _2 Z: 51 = {: ) F: (, -: ` (1 3 & p. )@. (2 & | )@ {: ) etx 102
828- ' domain error' -: ([ _2 Z: 51 = {: ) F. (, -: ` (1 3 & p. )@. (2 & | )@ {: ) etx 102
829-
830- a =: 3 : 0
831- t =: t + 1
832- _3 Z: 1000
833-
834- 0
835- )
836- ' fold limit' -: ] F. a etx t =: 0
837- t -: 1000 NB. quit after 1000 tries
719+ NB. f/ NaN --------------------------------------------------------------
720+
721+ ' NaN error' -: + / etx _ __ NB. smoke test
722+
723+ ' NaN error' -: + / etx (_ __ ([ )` (2 ? # @ ] )` ] } ] ) (2 + ? 100 ) ? @ $ 0
724+ ' NaN error' -: + / etx ((,. _ __) ([ )` ([: < 2 1 < @ ? $ @ ] )` ] } ] ) (2 + ? 50 50 ) ? @ $ 0
725+ ' NaN error' -: + / " 2 etx ((,. _ __) ([ )` ([: < 1 2 1 < @ ? $ @ ] )` ] } ] ) (2 + ? 4 50 50 ) ? @ $ 0
726+
727+ ' NaN error' -: - / etx (_ __ ([ )` (2 * 2 ? <. @: -: @: # @ ] )` ] } ] ) (4 + ? 100 ) ? @ $ 0
728+ ' NaN error' -: - / etx ((,. _ __) ([ )` ([: < 2 * &. > 2 1 < @ ? <. @: -: @: $ @ ] )` ] } ] ) (4 + ? 50 50 ) ? @ $ 0
729+ ' NaN error' -: - / " 2 etx ((,. _ __) ([ )` ([: < 2 * &. > 1 2 1 < @ ? <. @: -: @: $ @ ] )` ] } ] ) (4 + ? 4 50 50 ) ? @ $ 0
730+
838731
8397329 !: 19 ct
840733
0 commit comments