APL2 idioms added to idiom list

APL2 idioms added to idiom list

⌷idioms←1499 4⍴'(Cyclic) compression of successive blanks.' '(A∨1⌽A←CV≠'' '')/CV' '' 0 '(Real) solution of quadratic equation with coefficients NV.' '(-NV[2]-¯1 1×((NV[2]*2)-×/4,NV[1 3])*.5)÷2×NV[1]' '3 ←→ ⍴NQ' 0 '0 corresponding to each item of XA.' '{0}¨XA' '' 1 '0 irrespective of XA.' '{0}XA' '' 1 '1 if XA does not have an empty first dimension, 0 otherwise (⎕ML<2).' '0≠⊃⍴XA' '' 1 '1 if XA has a depth of 0 or 1 (simple scalar, vector, etc.), 0 otherwise.' '1=≡,XA ' '' 1 '1 if XA has a depth of 1 (simple array), 0 otherwise.' '1=≡XA ' '' 1 '1 if XA has a depth of zero (simple scalar), 0 otherwise.' '0=≡XA' '' 1 '1 if XA has a rank of zero (scalar), 0 otherwise.' '0=⍴⍴XA' '' 1 '1 if XA has an empty first dimension, 0 otherwise (⎕ML<2).' '0=⊃⍴XA' '' 1 '1 if XA is empty, 0 otherwise.' '0∊⍴XA ' '' 1 '1 if XA is not empty, 0 otherwise.' '~0∊⍴XA ' '' 1 '1 if XV has a shape of zero, 0 otherwise.' '0=⍴XV' '' 1 'A Boolean mask indicating the leading blank spaces in each row of CA.' '^\'' ''=CA' '' 1 'A magic square, side IS.' 'A⊖(A←(⍳IS)-⌈IS÷2)⌽(IS,IS)⍴⍳IS×IS' '1=2|IS' 0 'A nested vector comprising simple character vectors constructed from the rows of CA (which must be of depth 1) with all blank spaces removed.' '~∘'' ''¨↓CA' '' 1 'A nested vector comprising simple character vectors constructed from the rows of CA (which must be of depth 1) with trailing blank spaces removed.' '{(+/∨\'' ''≠⌽⍵)↑¨↓⍵}CA' '' 1 ('A nested vector comprising vectors that each correspond to a position in the original vectors of PV ',(⎕ucs 8211),' the first vector contains the first item from each vector in PV, padded to be the same length as the largest vector, and so on (⎕ML<2).') '↓⍉↑PV' '' 1 ('A nested vector comprising vectors that each correspond to a position in the original vectors of PV ',(⎕ucs 8211),' the first vector contains the first item from each vector in PV, padded to be the same length as the largest vector, and so on (⎕ML≥2).') '↓⍉⊃PV' '' 1 'A simple vector comprising as many items as there are rows in XM2, where each item is the number of the first row in XM1 that matches each row in XM2.' 'XM1{(↓⍺)⍳↓⍵}XM2' '' 1 'A way to combine trigonometric functions (sin NS1 cos NS2).' '1 2×.○NS1,NS2' '' 0 'Accurately sum a vector of floating numbers.' 'FS←+/F[⍒|F]' '' 2 'Add subvectors of N from consecutive G dups.' ('N←+/¨(+\¯1↓1,G≠1⌽G)',(⎕ucs 8838 78)) '' 2 'Add subvectors of N given B breaks in group.' ('N←+/¨(+\B)',(⎕ucs 8838 78)) '' 2 'Add subvectors of N given L items per group.' ('N←+/¨(L/1+⍳⍴L)',(⎕ucs 8838 78)) '' 2 'Add subvectors of N using ordered list MG.' ('N←+/¨(+\¯1↓1,∨/MG≠1⊖MG)',(⎕ucs 8838 78)) '' 2 'Add vector N to each column of NM.' 'NM←NM+[1]N' '0=⎕IO' 2 'Add vector N to each column of NM.' 'NM←NM+[2]N' '1=⎕IO' 2 'Adding a new dimension after dimension IS1 IS2-fold.' '(⍋⍋(IS1+1),⍳⍴⍴XA)⍉(IS2,⍴XA)⍴XA' '' 0 'Adding an empty row into XM after row IS.' '((IS+1)≠⍳1+1⍴⍴XM)⍀XM' '' 0 'Adding an empty row into XM after rows IV.' '(~(⍳(⍴IV)+1⍴⍴XM)∊IV+⍳⍴IV)⍀XM' '' 0 'Adding NV to each column of NA.' 'NA+⍉(⌽⍴NA)⍴NV' '≢NQ ←→ ≢NA' 0 'Adding NV to each column of NM.' '2 1 2⍉NV∘.+NM' '' 0 'Adding NV to each column of NM.' '1 2 2⍉NM∘.+NV' '' 0 'Adding NV to each row of NA.' 'NA+(⍴NA)⍴NV' '(⍴NQ)=¯1↑⍴NA' 0 'Adding NV to each row of NM.' '1 1 2⍉NV∘.+NM' '' 0 'Adding NV to each row of NM.' '1 2 1⍉NM∘.+NV' '' 0 'Adding scalar NS to last element of NA.' 'NA+(-⍴NA)↑NS' '' 0 'Ain''t Dot Is. Test for even # of non-zeros.' 'BS←0≠.=N' '' 2 'Aligning columns of matrix XM to diagonals.' '(1-⍳¯1↑⍴XM)⌽XM' '' 0 'Aligning diagonals of matrix XM to columns.' '(¯1+⍳¯1↑⍴XM)⌽XM' '' 0 'All axes of array A.' 'I←⍳⍴⍴A' '' 2 'All axes of array XA.' '⍳⍴⍴XA' '' 0 'All binary representations up to IS (truth table).' '((⌈2⍟1+IS)⍴2)⊤0,⍳IS' '' 0 'All binary representations with IS bits (truth table).' '(IS⍴2)⊤¯1+⍳2*IS' '' 0 'All column indices of array A.' 'I←⍳⊃⌽⍴A' '' 2 'All elements true (^/) on each subvector of BV2 indicated by BV1.' '(BV1/BV2)^A/1⌽A←(BV2≤BV1)/BV1' '' 0 'All factors of IS.' 'I←(0=I|IS)/I←2+⍳⌊IS÷2' '0=⎕IO' 2 'All factors of IS.' 'I←(0=I|IS)/I←1+⍳⌊IS÷2' '1=⎕IO' 2 'All indices of vector V.' 'I←⍳⍴V' '' 2 'All indices of vector XV.' '⍳⍴XV' '' 0 'All ones after the first one.' 'B←∨\B' '' 2 'All ones after the first zero.' 'B←≤\B' '' 2 'All ones to the first zero.' 'B←∧\B' '' 2 'All pairs of elements of ⍳IS1 and ⍳IS2.' '⎕IO+(IS1,IS2)⊤(⍳IS1×IS2)-⎕IO' '' 0 'All pixels in a 5 by 10 window.' 'Z←(⍳5)∘.+¯11○⍳10' '' 2 'All possible pairs of 1 through IS.' 'M←(<⌿M)/M←(2,IS*2)⍴(,⍉M),,M←IS IS⍴1+⍳IS' '0=⎕IO' 2 'All possible pairs of 1 through IS.' 'M←(<⌿M)/M←(2,IS*2)⍴(,⍉M),,M←IS IS⍴⍳IS' '1=⎕IO' 2 'All primes up to IS.' '(2=+⌿0=(⍳IS)∘.|⍳IS)/⍳IS' '' 0 'All row indices of matrix M.' 'I←⍳≢M' '' 2 'All valid one character APL2 names.' 'C←(¯1≠⎕NC,['''']⎕AV)/⎕AV' '' 2 'All zeros except the first one.' 'B←<\B' '' 2 'All, both.' '^/BA' '' 0 'Alphabetical comparison with alphabets XV.' '(XV⍳XA1)<XV⍳XA2' '' 0 'Alphabetizing CA; equal alphabets in same column of CM.' '(¯1↑⍴CM)|(,CM)⍳CA' '' 0 'Alternate beg/end tags.' ('M←↑∊¨⊂[1]M',(⎕ucs 8867),'(B/,M)←(+/B←,M=''ø'')⍴'':HP1.'' '':EHP1.''') '0=⎕IO' 2 'Alternate beg/end tags.' ('M←↑∊¨⊂[2]M',(⎕ucs 8867),'(B/,M)←(+/B←,M=''ø'')⍴'':HP1.'' '':EHP1.''') '1=⎕IO' 2 'Alternating product.' '÷/NA' '' 0 'Alternating product of N.' 'NS←÷/N' '' 2 'Alternating sequence of I ones and zeros.' 'B←I/(⍴I)⍴1 0' '' 2 ('Alternating series (1 ¯1 2 ¯2 3 ¯3 ',(⎕ucs 8230 41 46)) '#NAME?' '' 0 'Alternating series of length IS(1,-1,2,-2..).' 'N←-\⍳IS' '' 2 'Alternating sum.' '-/NA' '' 0 'Alternating sum of magnitude of N.' 'NS←-/|N' '' 2 'Alternating sum of N.' 'NS←-/N' '' 2 'An expression giving itself.' '1⌽22⍴11⍴''''''1⌽22⍴11⍴''''''' '' 0 'Annuity coefficient: IA periods at int FA.' 'A←FA÷⍉1-(1+FA)∘.×-IA' '' 2 'Annuity coefficient: IA periods at interest rate NA %.' '((⍴A)⍴NA÷100)÷A←⍉1-(1+NA÷100)∘.*-IA' '' 0 'Any element true (∨/) on each subvector of BV2 indicated by BV1.' '(BV1/BV2)≥A/1⌽A←(BV2∨BV1)/BV1' '' 0 'Any, anyone.' '∨/BA' '' 0 'Applying to columns action defined on rows.' ((⎕ucs 9033 32 8230),' ⍉XV') '' 0 'Arccosine of NA in radians.' 'FA←¯2○NA' '' 2 'Arcsine of NA in radians.' 'FA←¯1○NA' '' 2 'Arctan NA2÷NA1.' '((NA1≠0)×¯3○NA2÷NA1+NA1=0)+○((NA1=0)×.5××NA2)+(NA1<0)×1-2×NA2<0' '' 0 'Arctangent of NA in radians.' 'FA←¯3○NA' '' 2 'Are there less than N items in each dim?' 'B←N>⍴A' '' 2 'Area of a polygon given X,Y endpoints.' 'NS←|.5×+/Y×(¯1⌽X)-1⌽X' '' 2 'Area of a triangle given side length.' 'V←(×/(+/X÷2)-0,X)*.5' '3=⍴X' 2 'Area of triangle with side lengths in NV (Heron''s formula).' '(×/(+/NV÷2)-0,NV)*.5' '3 ←→ ⍴NQ' 0 'Arithmetic average (mean value).' '(+/NV)÷⍴NV' '' 0 'Arithmetic average (mean value) of NV1 weighted by NV2.' '(NV2+.×NV1)÷⍴NV1' '' 0 'Arithmetic average (mean value), also for an empty array.' '(+/,NA)÷1⌈⍴,NA' '' 0 'Arithmetic precision of the system (in decimals).' '⌊|10⍟|1-3×÷3' '' 0 'Arithmetic progression from NS1 to NS2 with step NS3.' 'NS1+(NS3××NS2-NS1)×(⍳1+|⌊(NS2-NS1)÷NS3)-⎕IO' '' 0 'Arithmetic progression of NS2 numbers from NS1 with step NS3.' 'NS1+NS3×(⍳NS2)-⎕IO' '' 0 'Arithmetic progression vector.' 'N←X+NS×⍳IS' '' 2 'Arithmetic progression vector.' 'N←X+NS×¯1+⍳IS' '' 2 'Array and its negative (''plus minus'').' 'NA∘.×1 ¯1' '' 0 'Array and its negative (''plus minus'').' 'NA,[.5+⍴⍴NA]-NA' '' 0 'Array with shape of XA and XV as its rows.' '(⍴XA)⍴XV' '' 0 'Ascending cardinal numbers (ranking, all different).' '⍋⍋NV' '' 0 'Ascending cardinal numbers (ranking, shareable).' '⌊.5×(⍋⍋NV)+⌽⍋⍋⌽NV' '' 0 ('Ascending series of integers IS2',(⎕ucs 8230),'IS1 (for small IS2 and IS1).') '(IS2-1)↓⍳IS1' '' 0 'ASCII sequence in HEX table.' 'C←16 16⍴⎕AV' '' 2 'Assign value to A if not assigned.' '⍎(0=⎕NC ''A'')/''A←1''' '' 2 'Assign values of expressions in CM1 to variables named in CM2.' 'A←⍎,'','',''('',''0'',''⍴'',CM2,''←'',CM1,'')''' '' 0 'Assigns MY-values to matrix of MX-names.' '⍎¨⊂[1]MX,''←'',⍕MY' '0=⎕IO' 2 'Assigns MY-values to matrix of MX-names.' '⍎¨⊂[2]MX,''←'',⍕MY' '1=⎕IO' 2 'Attach row numbers to a matrix.' 'M←(⍳≢M),M' '' 2 'Average (mean value) of columns of matrix NM.' '(+⌿NM)÷1↑(⍴NM),1' '' 0 'Average (mean value) of elements of NA along direction IS.' '(+/[IS]NA)÷(⍴NA)[IS]' '' 0 'Average (mean value) of rows of matrix NM.' '(+/NM)÷¯1↑1,⍴NM' '' 0 'Average (mean) of N.' 'AVG←(+/N)÷1⌈⍴N' '' 2 'Avoiding division by zero error (gets value zero).' '(0≠NA1)×NA2÷NA1+0=NA1' '' 0 'Avoiding parentheses by swapping arguments of FUNCTION F.' ('(1 F⍨ ',(⎕ucs 8230 41)) '' 0 'BA1 but not BA2.' 'BA1>BA2' '' 0 'BA1 implies BA2.' 'BA1≤BA2' '' 0 'Barchart of integer values (across the page).' ''' ⎕''[⎕IO+IV∘.≥⍳⌈/IV]' '' 0 'Barchart of integer values (down the page).' ''' ⎕''[⎕IO+(⌽⍳⌈/IV)∘.≤IV]' '' 0 'Barchart of NV with height NS (across the page).' ''' ⎕''[⎕IO+NV∘.≥(⌈/NV)×(⍳NS)÷NS]' '' 0 'Barchart of two integer series (across the page).' ''' *○⍟''[⎕IO+2⊥IM∘.≥⍳⌈/,IM]' '≢IM ←→ 2' 0 'Base 10 representation of a number.' 'IA←(¯1⌽⍳1+⍴⍴NA)⍉((1+⌊10⍟1⌈⌈/,NA)⍴10)⊤NA' '' 2 'Base IS representation of a number.' 'IA←(¯1⌽⍳1+⍴⍴NA)⍉((1+⌊IS⍟1⌈⌈/,NA)⍴IS)⊤NA' '' 2 'Best linear fit of points (NV1,NV2) (least squares).' 'NV2⌹NV1∘.*0 1' '' 0 'Beta function.' '÷NS2×(NS1-1)!NS2+NS1-1' '' 0 'Beta function.' 'N←÷Y×(X-1)!Y×X-1' '' 2 'Binary format of decimal number IS.' '⍕10⊥((1+⌈2⍟⌈/,IS)⍴2)⊤IS' '' 0 'Binary matrix of (N,K) combinations.' 'M←⌽(K=+⌿M)/M←(N⍴2)⊤⍳1+2⊥N↑K⍴1' '' 2 'Binomial coefficients from 1-IS.' 'M←⍉(⍳1+IS)∘.!⍳1+IS' '0=⎕IO' 2 'Binomial coefficients from 1-IS.' 'M←⍉(0,⍳IS)∘.!0,⍳IS' '1=⎕IO' 2 'Binomial distribution of IS trials with probability NS.' '(A!IS)×(NS*A)×(1-NS)*IS-A←-⎕IO-⍳IS+1' '' 0 'Binomial distribution of X trials at prob. Y.' 'N←(N!X)×(Y*N)×(1-Y)*X-N←⍳X+1' '0=⎕IO' 2 'Binomial distribution of X trials at prob. Y.' 'N←(N!X)×(Y*N)×(1-Y)*X-N←¯1+⍳X+1' '1=⎕IO' 2 'Blank rows.' '^/'' ''=CM' '' 0 'Boolean ending changes given # duped items.' 'B←(,(1-L),[.5]1)/1' '0=⎕IO' 2 'Boolean ending changes given # duped items.' 'B←(,(1-L),[1.5]1)/1' '1=⎕IO' 2 'Boolean ending changes given # duped items.' 'B←(1+⍳+/L)∊+\L' '0=⎕IO' 2 'Boolean ending changes given # duped items.' 'B←(⍳+/L)∊+\L' '1=⎕IO' 2 'Boolean expand length for headers.' 'B←2</0,(1+B)/B' '' 2 'Boolean first item of each change in MG.' 'B←¯1↓1,∨/MG≠1⊖MG' '' 2 'Boolean first ones in each group of ones.' 'B←2</0,B' '' 2 'Boolean items in X that are not in Y.' 'B←~X∊Y' '' 2 'Boolean L[i] gaps after each one.' 'B←(,1,[.5]-L)/1' '0=⎕IO' 2 'Boolean L[i] gaps after each one.' 'B←(,1,[1.5]-L)/1' '1=⎕IO' 2 'Boolean last item of each change in MG.' 'B←1↓(∨/MG≠¯1⊖MG),1' '' 2 'Boolean last ones in each group of ones.' 'B←2>/B,0' '' 2 'Boolean mask of CM containing VC.' 'BM←⊃∨/VC⍷¨⊂CM' '' 2 'Boolean one at first occurrence of C in CA.' '(,BA)←<\,BA←C⍷CA' '' 2 'Boolean rows of CM containing C.' 'B←∨/C⍷CM' '' 2 'Boolean rows of CM starting with C.' 'B←,1↑[0]C⍷CM' '0=⎕IO' 2 'Boolean rows of CM starting with C.' 'B←,1↑[1]C⍷CM' '1=⎕IO' 2 'Boolean rows of M all equal to scalar S.' 'B←M∧.=S' '' 2 'Boolean rows of MVX containing MVY.' 'B←∨/MVX∧.(≡¨)⍉MVY' '' 2 'Boolean rows of MX containing MY.' 'B←∨/MX∧.=⍉MY' '' 2 'Boolean start changes given length vector L.' 'B←(,1,[.5]1-L)/1' '0=⎕IO' 2 'Boolean start changes given length vector L.' 'B←(,1,[1.5]1-L)/1' '1=⎕IO' 2 'Boolean start changes given length vector L.' 'B←(⍳+/L)∊+\0,L' '0=⎕IO' 2 'Boolean start changes given length vector L.' 'B←(⍳+/L)∊+\1,L' '1=⎕IO' 2 'Boolean start vector given position indices.' 'B←(≢M)↑(⍳⌈/P)∊P' '' 2 'Boolean start vector to boolean end vector.' 'B←1⌽B' '' 2 'Boolean starting changes given # duped items.' 'B←(⍳+/L)∊0,+\L' '0=⎕IO' 2 'Boolean starting changes given # duped items.' 'B←(⍳+/L)∊+\1,L' '1=⎕IO' 2 'Boolean test: All items in B equal?' 'BS←≠/0 1∊∊AB' '' 2 'Boolean test: All items in B equal?' 'BS←AB≡1⌽AB' '' 2 'Boolean test: All items in simple B equal?' 'BS←≠/0 1∊B' '' 2 'Boolean test: Are all items in V equal?' 'BS←V∧.∊⊂⊃V' '' 2 'Boolean test: Are all items in V equal?' 'BS←V≡1⌽V' '' 2 'Boolean test: Are all items in V equal?' 'BS←V∧.=⊃V' '1=≡V' 2 'Boolean test: Are all items of V unique?' 'BS←(V⍳V)≡⍳⍴V' '' 2 'Boolean test: Are all true?' 'BS←∧/B' '' 2 'Boolean test: Are any true?' 'BS←∨/B' '' 2 'Boolean test: Are none true?' 'BS←~∨/B' '' 2 'Boolean test: Is A a nested array?' 'BS←1<|≡A' '' 2 'Boolean test: Is A a scalar?' 'BS←0∊⍴⍴A' '' 2 'Boolean test: Is A a simple array?' 'BS←1≥|≡A' '' 2 'Boolean test: Is A a simple character array?' 'BS←A≡⍕A' '' 2 'Boolean test: Is A a vector?' 'BS←1∊⍴⍴A' '' 2 'Boolean test: Is A anti-symmetric?' 'BS←A≡-⍉A' '' 2 'Boolean test: Is A empty?' 'BS←0∊⍴A' '' 2 'Boolean test: Is A non-empty?' 'BS←0≠⍴,A' '' 2 'Boolean test: Is A numeric? (if homogeneous).' 'BS←0=⊃0⍴A' '' 2 'Boolean test: Is A simple numeric?' 'BS←(⊃0⍴⊂A)≡(⍴A)⍴0' '' 2 'Boolean test: Is A symmetric?' 'BS←A≡⍉A' '' 2 'Boolean test: Is any element of N even?' 'BS←∨/~2|N' '' 2 'Boolean test: Is AX identical to AY?' 'BS←AX≡AY' '' 2 'Boolean test: Is B boolean?' 'BS←∧/∊B∊0 1' '' 2 'Boolean test: Is every element of N odd?' 'BS←∧/2|N' '' 2 'Boolean test: Is every element of N positive?' 'BS←∧/N>0' '' 2 'Boolean test: Is every element of NA even?' 'BS←∧/∊~2|NA' '' 2 'Boolean test: Is every element of NA integer?' 'BS←∧/∊NA=⌊NA' '' 2 'Boolean test: Is first item largest?' 'BS←~×⊃⍒N' '' 2 'Boolean test: Is first item largest?' 'BS←|/⍋N' '' 2 'Boolean test: Is first item smallest?' 'BS←~×⊃⍋N' '' 2 'Boolean test: Is first item smallest?' 'BS←|/⍒N' '' 2 'Boolean test: Is IS prime?' 'BS←0=+/0=((2×IS≠2),2+2×⍳⌊.5×IS*.5)|IS' '0=⎕IO' 2 'Boolean test: Is IS prime?' 'BS←0=+/0=((2×IS≠2),1+2×⍳⌊.5×IS*.5)|IS' '1=⎕IO' 2 'Boolean test: Is N in ascending column order.' 'BS←∧⌿N=⌈⍀N' '' 2 'Boolean test: Is N in ascending row order.' 'BS←∧/N=⌈\N' '' 2 'Boolean test: Is N permutation of NX?' 'BS←N[⍋N]≡NX[⍋NX]' '' 2 'Boolean test: Is N permutation vector?' 'BS←N[⍋N]≡1+⍳⍴N' '0=⎕IO' 2 'Boolean test: Is N permutation vector?' 'BS←N[⍋N]≡⍳⍴N' '1=⎕IO' 2 'Boolean test: Is V a valid APL name?' 'BS←¯1≠⎕NC V' '' 2 'Boolean test: Is Y a subset of X?' 'BS←∧/,Y∊X' '' 2 'Boolean test: Parity.' 'BS←≠/B' '' 2 'Boolean vector of length IS with ones in locations IA.' '(⍳IS)∊IA' '' 0 'Boolean vector of length IS with zeroes in locations IA.' '(~(⍳IS)∊IA)' '' 0 'Branch to label on condition.' 'IS:→(100<NS←NS+1)/IS' '' 2 'Branch to line in I of first true B.' '→B/I' '' 2 'Branch to line in position PS of I.' '→PS⊃I' '' 2 'Branch to offset IS from current line.' '→⎕LC+IS' '' 2 'Build array from boolean pattern. Insert S.' 'A←('' '',S)[BA]' '1=⎕IO' 2 'Build array from boolean pattern. Insert S.' 'A←('' '',S)[1+BA]' '0=⎕IO' 2 'Build array from boolean pattern. Insert V.' 'A←('' '',V)[BA×(⍴BA)⍴⍳⊃⌽⍴BA]' '1=⎕IO' 2 'Build array from boolean pattern. Insert V.' 'A←('' '',V)[1+BA×(⍴BA)⍴⍳⊃⌽⍴BA]' '0=⎕IO' 2 'Build array from boolean pattern. Reduce A.' 'A←↑⊃,/¨(⊂[1]BM)⊂¨⊂V' '0=⎕IO' 2 'Build array from boolean pattern. Reduce A.' 'A←↑⊃,/¨(⊂[2]BM)⊂¨⊂V' '1=⎕IO' 2 'Cartesian product: all pairs of AX, AY.' 'AV←AX∘.,AY' '' 2 'Cascade NS-fold fill between two polygons.' 'VZ←(⊂ZX)+(⊂ZY-ZX)×(⍳NS+1)÷NS' '0=⎕IO' 2 'Cascade NS-fold fill between two polygons.' 'VZ←(⊂ZX)+(⊂ZY-ZX)×(0,⍳NS)÷NS' '1=⎕IO' 2 'Case structure according to key vector XV.' '→IV[XV⍳XS]' '' 0 'Case structure using levels with limits NV.' '→(NS≥NV)/IV' '' 0 'Case structure with an encoded branch destination.' '→IV[1+2⊥BV]' '' 0 'Case structure with integer switch.' '→IS⌽IV' '' 0 'Case structure with logical switch (preferring from start).' '→BV/IV' '' 0 'Catenating IS elements XA after every element of XV.' ',XV,((⍴XV),IS)⍴XA' '' 0 'Catenating IS elements XS after indices IV in vector XV.' 'A←IS×⍴,IV ⋄ (XV,A⍴XS)[⍋(⍳⍴XV),A⍴IV]' '' 0 'Catenating IS elements XS before every element of XV.' ',(((⍴XV),IS)⍴XS),XV' '' 0 'Catenating IS elements XS before indices IV in vector XV.' 'A←IS×⍴,IV ⋄ ((A⍴XS),XV)[⍋(A⍴IV),⍳⍴XV]' '' 0 'Centering C in field width NS.' 'C←(-⌊.5×0⌈NS-⍴C)⌽NS↑C' '' 2 'Centering character array CA with only right edge ragged.' '(-⌊0.5×+/^\'' ''=⌽CA)⌽CA' '' 0 'Centering character array CA with ragged edges.' '(A-⌊0.5×(A←+/^\⌽A)++/^\A←'' ''=⌽CA)⌽CA' '' 0 'Centering left justified CM.' 'CM←(-⌊.5×+/∧\⌽CM='' '')⌽CM' '' 2 'Centering non-justified CM.' 'CM←(⌈.5×⊃-/+/¨∧\¨B(⌽B←CM='' ''))⌽CM' '' 2 'Centering right justified CM.' 'CM←(⌈.5×+/∧\CM='' '')⌽CM' '' 2 'Centering text line CV into a field of width IS.' 'IS↑((⌊-/.5×IS,⍴CV)⍴'' ''),CV' '' 0 'Centering text line CV into a field of width IS.' '(-⌊.5×IS+⍴CV)↑CV' '' 0 'Change A to scalar if it is simple.' '⍎(1=≡A)/''A←⊂A''' '' 2 'Change A, only if it is scalar, to vector.' 'A←1/A' '' 2 'Change scalars to vectors at depths 0-2.' 'A←1/¨A' '' 2 'Change sign on condition B.' 'N←N×¯1*B' '' 2 'Change X if new value given.' 'X←⊃('' ''∨.≠V)↓X V←⍞' '' 2 'Changing an index origin dependent argument to act as ⎕IO=0.' '⎕IO+IA' '' 0 'Changing an index origin dependent argument to act as ⎕IO=1.' '(⎕IO-1)+IA' '' 0 'Changing an index origin dependent result to be as ⎕IO=0.' '-⎕IO-IA' '' 0 'Changing an index origin dependent result to be as ⎕IO=1.' '(~⎕IO)+IA' '' 0 'Changing connection matrix IM (¯1 → 1) to a node matrix.' '(1 ¯1∘.=⍉IM)+.×⍳≢⎕←IM' '' 0 'Changing connectivity list CM to a connectivity matrix.' 'A←(×/B←0 0+⌈/,CM)⍴0 ⋄ A[⎕IO+B[1]⊥-⎕IO-CM]←1 ⋄ B⍴A' '' 0 'Changing connectivity matrix CM to a connectivity list.' '(,CM)/1+A⊤¯1+⍳×/A←⍴CM' '' 0 'Changing index of an unfound element to zero.' '(1+⍴XV)|XV⍳XA' '' 0 'Changing index of an unfound element to zero (not effective).' '(XA∊XV)×XV⍳XA' '' 0 'Changing lengths IV of subvectors of XV to ending indicators.' '(⍳⍴XV)∊(+\IV)-~⎕IO' '' 0 'Changing lengths IV of subvectors of XV to starting indicators.' '(⍳⍴XV)∊+\⎕IO,IV' '' 0 'Changing lengths IV of subvectors to ending indicators.' '(⍳+/IV)∊(+\IV)-~⎕IO' '' 0 'Changing lengths IV of subvectors to starting indicators.' 'A←(+/IV)⍴0 ⋄ A[+\¯1↓⎕IO,IV]←1 ⋄ A' '' 0 'Changing lengths IV of subvectors to starting indicators.' '(⍳+/IV)∊+\⎕IO,IV' '' 0 'Changing node matrix IM (starts,ends) to a connection matrix.' '-/(⍳⌈/,IM)∘.=⍉IM' '' 0 'Changing numeric code NA into corresponding name in NV.' 'CM[NV⍳NA;]' '' 0 'Changing starting indicators BV of subvectors to lengths.' 'A-¯1↓0,A←(1⌽BV)/⍳⍴BV' '' 0 'Changing XA if a new input value is given.' 'XA←⍎,((2↑''XA''),'' '',[.5]A)[⎕IO+~'' ''^.=A←⍞;]' '' 0 ('Check for input in range 1',(⎕ucs 8230),'XA.') '(A←⎕)∊⍳XA' '' 0 'Chipmunk. Selective picking from array.' 'A←PA⊃¨⊂A' '' 2 'Choosing a string according to boolean value BS.' '(BS/CV1),(~BS)/CV2' '' 0 'Choosing according to signum.' 'XV[2+×NA]' '' 0 'Choosing IA1 objects out of ⍳IA2 with replacement (roll).' '?IA1⍴IA2' '' 0 'Choosing IS2 objects out of ⍳IS1 without replacement (deal).' 'IS2?IS1' '' 0 'Choosing sorting direction during execution.' '⍋NV×(¯1 1)[IS]' '' 0 'Choosing sorting direction I +A, 0U, or -D.' 'NM←NM[⍋NM×I;]' '' 2 'Classic version only: The character numbers (atomic vector index) corresponding to the characters in CA.' '⎕AV⍳CA' '' 1 'Classification of elements NV into IS classes of equal size.' '+/(A×IS÷⌈/A←NV-⌊/NV)∘.≥¯1+⍳IS' '' 0 'Classification of NV1 to classes starting with NV2.' 'A[(B/C)-⍴NV2]←B/+\~B←(⍴NV2)<C←⍋NV2,NV1+A←0×NV1 ⋄ A' 'NQ2<.≥1⌽NQ2' 0 'Coefficients of exponential (curve) fit of points (NV1,NV2).' 'A←(⍟NV2)⌹NV1∘.*0 1 ⋄ A[1]←*A[1] ⋄ A' '' 0 'Coefficients of the binomial.' 'N←(⍳1+IS)!IS' '0=⎕IO' 2 'Coefficients of the binomial.' 'N←(0,⍳IS)!IS' '1=⎕IO' 2 'Column averages of NM.' 'CAVE←(+⌿NM)÷1⌈≢NM' '' 2 'Column averages of NM. (non-zero).' 'CAVG←(+⌿NM)÷1⌈+⌿0≠NM' '' 2 'Column sum of a matrix.' '+⌿NM' '' 0 'Column table. Vectors to columns of matrix.' 'M←⍉↑VV' '' 2 'Columnize rows of data separated by blanks.' 'CM←⍕↑(C≠'' '')⊂¨C←⊂[1]CM' '0=⎕IO' 2 'Columnize rows of data separated by blanks.' 'CM←⍕↑(C≠'' '')⊂¨C←⊂[2]CM' '1=⎕IO' 2 'Col-wise percentage per column.' 'N←100×NM÷[1]+⌿NM' '0=⎕IO' 2 'Col-wise percentage per column.' 'N←100×NM÷[2]+⌿NM' '1=⎕IO' 2 'Combinations of N things taken K ways.' 'C←K!N' '' 2 'Combine 2 arrays along their last dimension.' 'A←↑,/AX,⊂AY' '' 2 'Comparing vector XV with rows of array XA.' 'XA^.=XV' '' 0 'Comparison of successive rows.' '^/XM=1⊖XM' '' 0 'Comparison table.' 'IV∘.≥⍳⌈/IV,0' '' 0 'Complementary angle (arccos sin NS).' '○/¯2 1,NS' '' 0 'Compound interest for principals NA2 at rates NA3 % in times NA1.' 'NA2∘.×(1+NA3÷100)∘.*NA1' '' 0 'Compound interest: IA prds, FA int, NA prn.' 'A←NA∘.×(1+FA)∘.*IA' '' 2 'Conditional branch depending on sign of IS.' '→IV[2+×IS]' '' 0 'Conditional branch out of program.' '→0⌊⍳BS' '' 0 'Conditional branch out of program.' '→0×⍳BS' '' 0 'Conditional branch out of programs.' '⍎BS/''→''' '' 0 'Conditional branch to line IS.' '→IS⌈⍳BS' 'IS>0' 0 'Conditional change of elements of NA to one according to BA.' 'NA*~BA' '' 0 'Conditional drop of IV elements from array XA.' '(IV×BV)↓XA' '' 0 'Conditional drop of last element of XV.' '(-BS)↓XV' '' 0 'Conditional elementwise change of sign.' 'NA×(1 ¯1)[1+BA]' '1=⎕IO' 0 'Conditional elementwise change of sign.' 'NA×¯1*BA' '0=⎕IO ⋄ ⍴NA ←→ ⍴BA' 0 'Conditional execution.' '⍎BS/''EXPRESSION''' '' 0 'Conditional execution.' ('⍎BS↓''⍝ ',(⎕ucs 8230 39)) '' 0 'Conditional execution of monadic function.' 'fn¨BS/⊂A' '' 2 'Conditional in text.' '((~BS)/''IN''),''CORRECT''' '' 0 'Consecutive integers from IS1 to IS2 (arithmetic progression).' '(IS1-⎕IO)+⍳1+IS2-IS1' '' 0 'Continued fraction.' ('1+÷2+÷3+÷4+÷5+÷6+÷ ',(⎕ucs 8230)) '' 0 'Continuing from line IS (if NS>0) or exit.' '→IS××NS' '' 0 'Contour levels NV at points with altitudes NS.' 'NV[+⌿NV∘.≤NS]' '' 0 'Conversion from characters to numeric codes.' '⎕AV⍳XA' '' 0 'Conversion from decimal to hexadecimal.' '⍉''0123456789ABCDEF''[⎕IO+((⌈⌈/16⍟,IA)⍴16)⊤IA]' 'IA∊⍳255' 0 'Conversion from degrees to radians.' 'NA×○÷180' '' 0 'Conversion from hexadecimal to decimal.' '16⊥-⎕IO-''0123456789ABCDEF''⍳⍉CA' '' 0 'Conversion from radians to degrees.' 'NA×180÷○1' '' 0 'Conversion of alphanumeric string into numeric.' '10⊥¯1+⎕D⍳CV' '' 0 'Conversion of characters to hexadecimal representation (⎕AV).' ','' '',⍉''0123456789ABCDEF''[⎕IO+16 16⊤-⎕IO-⎕AV⍳CV]' '' 0 'Conversion of each row to a number (default zero).' '(CM∨.≠'' '')\1↓⍎''0 '',,CM,'' ''' '' 0 'Conversion of indices IM of array XA to indices of raveled XA.' '⎕IO+(⍴XA)⊥IM-⎕IO' '' 0 'Conversion of set of positive integers IV to a mask.' '(⍳⌈/IV)∊IV' '' 0 'Convert binary to character.' 'C←⎕UCS 2⊥¨((⌈.125×⍳⍴B)⊂B' '' 2 'Convert binary to integer.' 'IS←2⊥B' '' 2 'Convert character matrix to numeric vector.' 'N←1↓⍎''0'','','',CM' '' 2 'Convert character or numeric data into numeric.' '⍎⍕XV' '' 0 'Convert character to binary.' 'B←,⍉(8⍴2)⊤⎕UCS C' '' 2 'Convert character to hex.' 'H←(⎕D,⎕A)[,⍉16 16⊤⎕UCS C]' '0=⎕IO' 2 'Convert character to hex.' 'H←(⎕D,⎕A)[1+,⍉16 16⊤⎕UCS C]' '1=⎕IO' 2 'Convert character to numeric.' 'I←10⊥⎕D⍳C' '' 2 'Convert character to numeric.' 'I←10⊥¯1+⎕D⍳C' '' 2 'Convert character to Unicode/ASCII positions.' 'I←⎕UCS C' '' 2 'Convert character vector to vector of digits.' 'I←⍎¨C' '' 2 'Convert double words to integer.' 'I←(256⊥⍉I)-(256*4)×128≤,1↑[1]I←⎕UCS C' '0=⎕IO' 2 'Convert double words to integer.' 'I←(256⊥⍉I)-(256*4)×128≤,1↑[2]I←⎕UCS C' '1=⎕IO' 2 'Convert from AX, AY coordinates to radians.' 'NA←12○AX+¯11○AY' '' 2 'Convert from degrees to radians.' 'NA←NA×○÷180' '' 2 'Convert from NA pairs to radians.' 'NA←12○0J1⊥⊖NA' '2=≢NA' 2 'Convert from radians to degrees.' 'NA←NA×180÷○1' '' 2 'Convert halfword to float.' 'M←(256⊥1↓[0]N)×(×128-M)×16*¯63⌈¯70+128|M←1↑[0]N' '0=⎕IO' 2 'Convert halfword to float.' 'M←(256⊥1↓[1]N)×(×128-M)×16*¯63⌈¯70+128|M←1↑[1]N' '1=⎕IO' 2 'Convert hex to binary char.' 'C←∊4↑¨(''FEC80124936DA5B7''⍳H)⌽¨⊂''1111000010011010''' '0=⎕IO' 2 'Convert hex to binary char.' 'C←∊4↑¨(''FEC80124936DA5B7''⍳H)⌽¨⊂''0111100001001101''' '1=⎕IO' 2 'Convert integer to binary.' 'BM←⍉((1+⌊2⍟1⌈⌈/I)⍴2)⊤I' '' 2 'Convert integers to double words.' 'C←⎕UCS⍉(4⍴256)⊤I+(256*4)×I<0' '' 2 'Convert non-empty CA to NA - rank ≥1.' 'NA←↑⍎¨⊂[¯1+⍴⍴CA]'','',CA' '0=⎕IO' 2 'Convert non-empty CA to NA - rank ≥1.' 'NA←↑⍎¨⊂[⍴⍴CA]'','',CA' '1=⎕IO' 2 'Convert non-empty CM to numeric vector.' 'NM←↑⍎¨⊂[1]'','',CM' '0=⎕IO' 2 'Convert non-empty CM to numeric vector.' 'NM←↑⍎¨⊂[2]'','',CM' '1=⎕IO' 2 'Convert rows of digits to base 10.' 'I←10⊥⍉M' '' 2 'Convert to numeric, throw out characters.' 'I←1↓⍎''0 '',(C∊'' '',⎕D)/C' '' 2 'Coordinates of A corresponding to offsets P.' 'PM←⍉(⍴A)⊤P' '' 2 'Coordinates of A corresponting to offsets P.' 'PM←1+⍉(⍴A)⊤P-1' '' 2 'Copies. Create IS copies of C.' 'C←(IS×⍴C)⍴C' '' 2 'Corner element of a (non-empty) array.' '1⍴XA' '' 0 'Cosine of NA in radians.' 'FA←2○NA' '' 2 'Count of leading ones.' 'B←+/∧\B' '' 2 'Count of the number of Ys in each row of AX.' 'A←AX+.∊Y' '' 2 'Counting pairwise matches (equal elements) in two vectors.' 'XV1+.=XV2' '' 0 'Create a histogram from numeric vector.' 'CM←↑(⌊N)⍴¨''*''' '' 2 'Create col header CM for NS wide text.' 'CM←1 0⍕10 10⊤⍳NS' '' 2 'Cumulative maxima (⌈\) of subvectors of NV indicated by BV.' 'NV[A⍳⌈\A←⍋A[⍋(+\BV)[A←⍋NV]]]' '' 0 'Cumulative minima (⌊\) of subvectors of NV indicated by BV.' 'NV[A⍳⌈\A←⍋A[⍋(+\BV)[A←⍒NV]]]' '' 0 'Cumulative sum.' '#NAME?' '' 0 'Cumulative sums (+\) over subvectors of NV indicated by BV.' '#NAME?' '' 0 'Cumulative sums.' 'N←+\N' '' 2 'Current European date - DD/MM/YYYY.' 'C←''56/06/0005''⍕⎕TS[⌽⍳3]' '' 2 'Current European date and time.' 'C←''56/06/0005 06:06:05''⍕⎕TS[(⌽⍳3),3+⍳3]' '' 2 'Current time - HH:MM:SS.' 'C←''06:06:05''⍕3↑3↓⎕TS' '' 2 'Current US date - MM/DD/YYYY.' 'C←''56/06/0005''⍕⎕TS[1⌽⍳3]' '' 2 'Current US date and time.' 'C←''56/06/0005 06:06:05''⍕⎕TS[(1⌽⍳3),3+⍳3]' '' 2 'CV without any leading blank spaces.' '{(∨\'' ''≠⍵)/⍵}CV' '' 1 'CV without any leading blank spaces.' '{(+/^\'' ''=⍵)↓⍵}CV' '' 1 'Date IS (YYYYMM) given IS months from "0".' 'IS←1+0 100⊥0 12⊤IS-1' '' 2 'Decimal to hex.' 'H←(⎕D,⎕A)[,⍉((1+⌊16⍟1⌈⌈/,N)⍴16)⊤N]' '0=⎕IO' 2 'Decimal to hex.' 'H←(⎕D,⎕A)[1+,⍉((1+⌊16⍟1⌈⌈/,N)⍴16)⊤N]' '1=⎕IO' 2 'Decoding numeric code ABBCCC into a matrix.' '10 100 1000⊤IA' '' 0 'Decommenting a matrix representation of a function (⎕CR).' '(∨/A)⌿(⍴CM)⍴(,A)\(,A←^\(''⍝''≠CM)∨≠\CM='''''''')/,CM' '' 0 'Decommenting the ⎕CR of a function.' '((~,∧\(''⍝''≠CM)∨≠\CM='''''''')/,CM)←'' ''' '' 2 'Decrease rank of A by 1.' 'AV←⊂[¯1+(0≠⍴⍴A)/⍴⍴A]A' '0=⎕IO' 2 'Decrease rank of A by 1.' 'AV←⊂[(0≠⍴⍴A)/⍴⍴A]A' '1=⎕IO' 2 'Decrease rank of A by 1. Rank 2 or higher.' 'A←,[2↑⍳⍴⍴A]A' '' 2 'Definite integral of XV(X) in range NV with NS steps (''X''∊XV).' 'A+.×⍎XV,0⍴X←NV[1]+(A←--/NV÷NS)×0,⍳NS' '⍴NQ ←→ 2' 0 'Demote floating point representations to integers.' '⌊IA' '' 0 'Demote non-boolean representations to booleans.' '0∨BA' '' 0 'Depth of parentheses.' '+\(''(''=CV)-¯1↓0,'')''=CV' '' 0 'Depth of parenthesis.' 'I←+\(C=''('')-¯1↓0,C='')''' '' 2 'Derivate of polynomial NV.' '¯1↓NV×⌽¯1+⍳⍴NV' '' 0 'Descending cardinal numbers (ranking, all different).' '⍋⍒NV' '' 0 'Diagonal matrix with elements of NV.' '0 ¯1↓(-⍳⍴NV)⌽((2⍴⍴NV)⍴0),NV' '' 0 'Diagonal ravel.' '(,XA)[⍋+⌿(⍴XA)⊤(⍳⍴,XA)-⎕IO]' '' 0 'Difference of sets. Elements of X not in Y.' 'V←X~Y' '' 2 'Differences of successive elements of NA along direction IS.' 'NA-(-IS=⍳⍴⍴NA)↓0,[IS]NA' '' 0 'Digits of IS separately.' '((1+⌊10⍟IS)⍴10)⊤IS' '' 0 'Direct matrix product.' '1 3 2 4⍉NM1∘.×NM2' '' 0 'Display vector of vectors vertically.' ',['''']VV' '' 2 'Distribution of NA into intervals between NV.' '+/((¯1↓NV)∘.≤NA)^(1↓NV)∘.>NA' '' 0 'Divisibility table.' '0=(⍳⌈/IV)∘.|IV' '' 0 'Division to IS classes with width NS2, minimum NS1.' '+/(⍳IS)∘.=⌈(NA-NS1)÷NS2' '' 0 'Division. Avoid DOMAIN ERROR for N÷0.' 'NA←AX÷AY+AY=0' '' 2 'Division. Force DOMAIN ERROR for 0÷0.' 'NA←AX×÷AY' '' 2 'Divisors of IS.' '(0=A|IS)/A←⍳IS' '' 0 'Does each row contain only items from C?' 'B←CM∧.∊C' '' 2 'Does vector V have less than NS items?' 'BO←NS>⍴V' '' 2 'Doubles each occurrence of X within V.' 'V←(1+V∊X)/V' '' 2 'Doubles quotes in an expression.' 'C←'''''''',((1+C='''''''')/C),''''''''' '' 2 'Doubling quotes (for execution).' '(CV,'''''''')[(⎕IO+⍴CV)⌊⍋(⍳⍴CV),(''''''''=CV)/⍳⍴CV]' '' 0 'Drop of IS first columns from matrix XM.' '(0,IS)↓XM' '' 0 'Drop of IS first rows from matrix XM.' '(2↑IS)↓XM' '' 0 'Drop of IS first rows from matrix XM.' '(IS,0)↓XM' '' 0 'Duplicate items in vector V, L times.' 'V←L/V' '' 2 'Duplicate vector V, LS times.' 'M←LS⌿,[¯.5]V' '0=⎕IO' 2 'Duplicate vector V, LS times.' 'M←LS⌿,[.5]V' '1=⎕IO' 2 'Duplicate vector V, LS times.' 'V←(LS×⍴V)⍴V' '' 2 'Duplicating element of XV belonging to BV,1↑XV until next found.' 'XV[1⌈⌈\BV×⍳⍴BV]' '' 0 'Duplicating vector XV IS times.' '(IS×⍴XV)⍴XV' '' 0 'Editing CV1 with CV2 ''-wise.' '((~(⍴A↑CV1)↑''/''=CV2)/A↑CV1),(1↓A↓CV2),(A←+/^\CV2≠'','')↓CV1' '' 0 'Elements of NV divisible by Y.' '(0=Y|NV)/NV' '' 0 'Elements of XV not in XA (difference of sets).' '(~XV∊XA)/XV' '' 0 'Empty matrix.' '0⌿XM' '' 0 'Empty numeric vector.' (,'⍬') '' 0 'Encoding current date.' '100⊥100|3↑⎕TS' '' 0 'Ending points for IS1 fields of width IS2.' '(IS1×IS2)⍴(-IS2)↑1' '' 0 'Ending points for XV in indices pointed by IV.' '1⌽(⍳⍴XV)∊IV' '' 0 'Ending points of groups of equal elements (non-empty XV).' '((1↓XV)≠¯1↓XV),1' '' 0 'Enlist - top down. Remove highest nesting.' 'A←,↑AA' '' 2 'Entering from terminal data exceeding input (printing) width.' 'NA←0 2 1 2 5 8 0 4 5,⎕' '' 0 'Euler''s idiom (accurate when NA is a multiple of 0J0.5).' '*○NA' '' 1 'Eval. asc. ord. N-coeff poly. at points NA.' 'N←(,['''']NA)⊥⌽N' '' 2 'Eval. dec. ord. N-coeff poly. at points NA.' 'N←(,['''']NA)⊥N' '' 2 'Evaluating a three row determinant.' 'NS←-/+/¨×⌿¨(1 ¯1×⊂0 1 2)⌽¨⊂M' '' 2 'Evaluating a two row determinant.' 'NS←-/×⌿0 1⌽M' '' 2 'Evaluating a two-row determinant.' '-/×/0 1⊖NM' '' 0 'Evaluating a two-row determinant.' '-/×⌿0 1⌽NM' '' 0 'Evaluation of several expressions; results form a vector.' '⍎,'','',''('','','',XA,'')''' '' 0 'Exclusive or.' 'BA1≠BA2' '' 0 'Execute each with prototype of CSV.' 'V←1↓⍎¨CSV,VV' '' 2 'Execute statement PS in VV of statements.' 'A←⍎PS⊃VV' '' 2 'Execute which works on empty vector.' 'V←1↓⍎''0 '',V' '' 2 'Executing costly monadic function F on repetitive arguments.' '(F A/XV)[+\A←(XV⍳XV)=⍳⍴XV]' '' 0 'Execution of expression NV with default value Y.' '⍎((NV^.='' '')/''Y''),NV' '' 0 'EXIT. Leave all levels of program.' (,'→') '' 2 'Expand N, but change fill item to NS.' 'N←(NS×~B)+B\N' '' 2 'Expand N, but change fill item to one.' 'N←(~B)+B\N' '' 2 'Expand V given length vector L.' 'V←(,L∘.≥⍳⌈/L)\V' '' 2 'Expansion vector with zero after indices IV.' '(⍴NV)≥⍋(⍳⍴NV),IV' '' 0 'Expansion vector with zero after indices IV.' '~(⍳(⍴IV)+⍴XV)∊IV+⍳⍴IV' '' 0 'Extending a distance table to next leg.' 'NM←NM⌊.+NM' '' 0 'Extending a transitive binary relation.' 'BM←BM∨.^BM' '' 0 'Field lengths of vector XV; IV ←→ ending indices.' 'IV-¯1↓0,IV←(~⎕IO)+(((1↓XV)≠¯1↓XV),1)/⍳⍴XV' '' 0 'Field width ≤NS of fractional part of number.' 'IA←+⌿NA≠⌊NA←(10*⍳NS)∘.×NA' '0=⎕IO' 2 'Field width ≤NS of fractional part of number.' 'IA←+⌿NA≠⌊NA←(10*-1-⍳NS)∘.×NA' '1=⎕IO' 2 'Field width for integral part of number.' 'IA←1+⌊10⍟1⌈NA' '' 2 'Fifo stock NV decremented with NS units.' 'A-¯1↓0,A←0⌈(+\NV)-NS' '' 0 'Filling XV with last element of XV to length IS.' 'IS↑XV,IS⍴¯1↑XV' '' 0 'Find description of VY from VX index to VVX.' 'VVY←(VVX,'' '')[VX⍳VY]' '' 2 'Find functions that contain string C.' 'CM←(1∊¨(⊂C)⍷¨⎕CR¨⊂[1]CM)⌿CM←⎕NL 3' '0=⎕IO' 2 'Find functions that contain string C.' 'CM←(1∊¨(⊂C)⍷¨⎕CR¨⊂[2]CM)⌿CM←⎕NL 3' '1=⎕IO' 2 'Find the exponent of NA such that NA*FA = A.' 'FA←NA⍟A' '' 2 'Finds the rows of CM containing C.' 'CM←(∨/C⍷CM)⌿CM' '' 2 'Finds the rows of CM that start with C.' 'CM←(,1↑[1]C⍷CM)⌿CM' '0=⎕IO' 2 'Finds the rows of CM that start with C.' 'CM←(,1↑[2]C⍷CM)⌿CM' '1=⎕IO' 2 'Finds word number NS in C.' ('C←NS⊃(C≠'' '')',(⎕ucs 8838 67)) '' 2 'First column as a matrix.' 'XM[;,1]' '' 0 'First column as a vector.' 'XM[;1]' '' 0 'First group of ones.' 'BA^^\BA=∨\BA' '' 0 'First IS figurative numbers.' 'I←+\+\1+⍳IS' '0=⎕IO' 2 'First IS figurative numbers.' 'I←+\+\⍳IS' '1=⎕IO' 2 'First IS triangular numbers.' 'I←+\1+⍳IS' '0=⎕IO' 2 'First IS triangular numbers.' 'I←+\⍳IS' '1=⎕IO' 2 'First occurrence of string XV in matrix XM.' '(XM^.=XV)⍳1' '¯1↑⍴XM ←→ ⍴XV' 0 'First occurrence of string XV1 in string XV2.' '(^⌿(¯1+⍳⍴XV1)⌽XV1∘.=XV2)⍳1' '' 0 'First one (<\) in each subvector of BV2 indicated by BV1.' '(BV2^BV1)∨(BV2∨BV1)\A>¯1↓0,A←(BV2∨BV1)/BV2' '' 0 'First one (turn off all ones after first one).' '<\BA' '' 0 'First ones in groups of ones.' 'BA>((-⍴⍴BA)↑¯1)↓0,BA' '' 0 'First ones in groups of ones.' 'BV>¯1↓0,BV' '' 0 'First part of numeric code ABBB.' '⌊IA÷1000' '' 0 'First word in CV.' '(¯1+CV⍳'' '')↑CV' '' 0 'Force 0÷0 into DOMAIN ERROR in division.' 'NA2×÷NA1' '' 0 'Force each item to same shape by overtake.' 'AV←(⌈/⍴¨AV)↑¨AV' '' 2 'Force each item to same shape by reshape.' 'AA←(⌈/(-⌈/⍴¨⍴¨AA)↑¨⍴¨AA)⍴¨AA' '' 2 'Force N numbers to range 0≤N≤NS.' 'N←0⌈NS⌊N' '' 2 'Force to 0 any N greater than NS.' 'N←N×N≤NS' '' 2 'Force to 0 any N less than NS.' 'N←N×NS≤N' '' 2 'For-loop ending construct.' '→IS2⌈⍳IS3≥IS1←IS1+1' '' 0 'Format and right justify columns of report.' 'CM←1↓[0]⍕0,[0]AA' '0=⎕IO' 2 'Format and right justify columns of report.' 'CM←1↓[1]⍕0,[1]AA' '1=⎕IO' 2 'Format and right justify NS wide columns.' 'CM←1↓[0](NS,0)⍕0,[0]AA' '0=⎕IO' 2 'Format and right justify NS wide columns.' 'CM←1↓[1](NS,0)⍕0,[1]AA' '1=⎕IO' 2 'Formatting a numerical vector to run down the page.' '⍕NV∘.+,0' '' 0 'Formatting NA with IV2 decimals in fields of width IV1.' '(,IV1,[1.1]IV2)⍕NA' '' 0 'Formatting with zero values replaced with blanks.' '(⍴A)⍴B\(B←,(''0''≠A)∨'' ''≠¯1⌽A)/,A←'' '',⍕XA' '' 0 'Forming a IS-row matrix with all rows alike (XV).' '(IS,⍴XV)⍴XV' '' 0 'Forming a transitive closure.' '→⎕LC⌈⍳∨/,(BM←BM∨BM∨.^BM)≠+BM' '' 0 'Forming a two-column matrix.' 'XV1,[1.1]XV2' '' 0 'Forming a two-row matrix.' 'XV1,[.1]XV2' '' 0 'Forming an initially empty array to be expanded.' '0 80⍴0' '' 0 'Forming first row of a matrix to be expanded.' '1 80⍴80↑XV' '' 0 'Fractional part.' '1|NA' '' 0 'Fractional part of number with sign.' 'FA←(×NA)|NA' '' 2 'Fractional part of number.' 'FA←1|NA' '' 2 'Fractional part with sign.' '(×NA)|NA' '' 0 'Framing.' '''_'',[1](''|'',CM,''|''),[1]''¯''' '' 0 'Framing CM in a box.' 'CM←''|'',(''¯'',[0]CM,[0]''_''),''|''' '0=⎕IO' 2 'Framing CM in a box.' 'CM←''|'',(''¯'',[1]CM,[1]''_''),''|''' '1=⎕IO' 2 'Frequency of X in Y.' 'N←+/X∘.=Y' '' 2 'From complex to magnitude and radians.' 'A←10 12∘.○ZA' '2=≢A' 2 'From magnitude AX and degrees AY to complex.' 'ZA←AX×¯12○○AY÷180' '' 2 'From magnitude AX and radians AY to complex.' 'ZA←AX×¯12○AY' '' 2 'From nested to simple char image.' 'CM←⍕⊂1/AA' '' 2 'Future value of cash flows NA at int FS.' 'A←(1+FS)⊥NA' '' 2 'Future value of cash flows NV at interest rate NS %.' '(1+NS÷100)⊥NV' '' 0 'Gamma function.' '!NS-1' '' 0 'Gamma function.' 'N←!N-1' '' 2 'Get (N+1)th item in vector V.' 'S←⊃N↓V' '' 2 'Get angle (deg) of real AX and imaginary AY.' 'NA←(180÷○1)×12○AX+¯11○AY' '' 2 'Get angle (rad) of real AX and imaginary AY.' 'NA←12○AX+¯11○AY' '' 2 'Get angle in degrees of A.' 'NA←(180÷○1)×12○0J1⊥⊖A' '' 2 'Get angle in radians of A.' 'NA←12○0J1⊥⊖A' '2=≢A (x,y) pairs' 2 'Get magnitude of A.' 'NA←|0J1⊥⊖A' '2=≢A (x,y) pairs' 2 'Get magnitude of AX, AY coordinates.' 'NA←|AX+¯11○AY' '' 2 'Get magnitude of NA pairs.' 'NA←|0J1⊥⊖NA' '2=≢NA' 2 'Get magnitude of real AX and imaginary AY.' 'NA←|AX+¯11○AY' '2=≢A (x,y) pairs' 2 'Ghost Buster. Inc rank by one on last dim.' 'A←,['''']A' '' 2 'Giving a character default value for input.' '1↑⍞,CS' '' 0 'Giving a numeric default value for input.' '1⍴(⍎⍞,'',⍬''),NS' '' 0 'Grade down (⍒) for sorting subvectors of NV having lengths IV.' 'A[⍋(+\(⍳⍴NV)∊+\⎕IO,IV)[A←⍒NV]]' '⍴NQ ←→ +/IV' 0 'Grade down (⍒) for sorting subvectors of NV indicated by BV.' 'A[⍋(+\BV)[A←⍒NV]]' '' 0 'Grade up (⍋) for sorting subvectors of NV having lengths IV.' 'A[⍋(+\(⍳⍴NV)∊+\⎕IO,IV)[A←⍋NV]]' '⍴NQ ←→ +/IV' 0 'Grade up (⍋) for sorting subvectors of NV indicated by BV.' 'A[⍋(+\BV)[A←⍋NV]]' '' 0 'Grade up according to key XV1.' '⍋XV1⍳XV2' '' 0 'Graph of XV(NV) at points NV (''NV''∊XV).' ''' *''[⎕IO+(⌽(¯1+⌊/A)+⍳1+(⌈/A)-⌊/A)∘.=A←⌊.5+⍎XV]' '' 0 'Gray code or reflected binary. Inverse of ≠\.' 'B←2≠/0,B' '' 2 'Greatest common divisor of elements of IV.' '⌈/(^/0=A∘.|IV)/A←⍳⌊/IV' '' 0 'Greatest common divisor of vector I.' 'IS←⌈/(∧/0=V∘.|I)/V←1+⍳⌊/I' '0=⎕IO' 2 'Greatest common divisor of vector I.' 'IS←⌈/(∧/0=V∘.|I)/V←⍳⌊/I' '1=⎕IO' 2 'Groups of ones in BA2 pointed to by BA1 (or trailing parts).' 'BA2^A=⌈\BA1×A←+\BA2>¯1↓0,BA2' '' 0 'Groups of ones in BV2 pointed to by BV1.' 'BV2^A∊(BV1^BV2)/A←+\BV2>¯1↓0,BV2' '' 0 'Handling array XA temporarily as a vector.' ('(⍴XA)⍴ ',(⎕ucs 8230),' ,XA') '' 0 ('Helps locating column positions 1',(⎕ucs 8230),'IS.') '1 0⍕10 10⊤1-⎕IO-⍳IS' '' 0 'Hex to Dec.' ('I←16⊥¨(⌈.5×(2|⍴H)+1+⍳⍴H)',(⎕ucs 8838),'(⎕D,⎕A)⍳H') '0=⎕IO' 2 'Hex to Dec.' ('I←16⊥¨(⌈.5×(2|⍴H)+⍳⍴H)',(⎕ucs 8838),'16|(⎕D,⎕A)⍳H') '1=⎕IO' 2 'Hex/Char.' ('C←⎕UCS 16⊥¨(⌈.5×(2|⍴H)+1+⍳⍴H)',(⎕ucs 8838),'(⎕D,⎕A)⍳H') '0=⎕IO' 2 'Hex/Char.' ('C←⎕UCS 16⊥¨(⌈.5×(2|⍴H)+⍳⍴H)',(⎕ucs 8838),'16|(⎕D,⎕A)⍳H') '1=⎕IO' 2 'Hilbert matrix of order IS.' '÷¯1+(⍳IS)∘.+⍳IS' '' 0 'Hilbert matrix of order IS.' 'M←÷1+(⍳IS)∘.+⍳IS' '0=⎕IO' 2 'Hilbert matrix of order IS.' 'M←÷¯1+(⍳IS)∘.+⍳IS' '1=⎕IO' 2 'Histogram (distribution barchart; down the page).' ''' ⎕''[⎕IO+(⌽⍳⌈/A)∘.≤A←+/(⍳1+(⌈/IV)-⌊/IV)∘.=IV]' '' 0 'Hyperbolic Arccosine of NA in radians.' 'FA←¯6○NA' '' 2 'Hyperbolic Arcsine of NA in radians.' 'FA←¯5○NA' '' 2 'Hyperbolic Arctangent of NA in radians.' 'FA←¯7○NA' '' 2 'Hyperbolic Cosine of NA in radians.' 'FA←6○NA' '' 2 'Hyperbolic Sine of NA in radians.' 'FA←5○NA' '' 2 'Hyperbolic Tangent of NA in radians.' 'FA←7○NA' '' 2 'I random boolean numbers.' 'BA←?I⍴2' '0=⎕IO' 2 'I random boolean numbers.' 'BA←¯1+?I⍴2' '1=⎕IO' 2 'Identity matrix of shape of matrix NM.' '(⍴NM)⍴1,0×NM' '' 0 'Identity matrix: IS by IS.' 'M←IS IS⍴1,IS⍴0' '' 2 'Identity matrix: IS by IS.' 'M←⊃⌹/0⍴⊂IS⍴0' '' 2 'Identity matrix: IS by IS.' 'M←(⍳IS)∘.=⍳IS' '' 2 'Identity of two sets.' '^/(XV1∊XV2),XV2∊XV1' '' 0 'IF NOT. Branch if condition B false.' '→IS×1~B' '' 2 'If Then/Else.' 'A←⍎⊃BS↓''else part'' ''then part''' '' 2 'IF. Branch on condition B.' '→IS+0~B' '' 2 'Increase rank by one after dim IS.' 'A←,[IS+.5]A' '' 2 'Increase rank by one on the first dim.' 'A←,[¯.5]A' '0=⎕IO' 2 'Increase rank by one on the first dim.' 'A←,[.5]A' '1=⎕IO' 2 'Increase rank of AX to rank of AY.' 'A←((-⍴⍴AY)↑((⍴⍴AY)⍴1),⍴AX)⍴AX' '' 2 'Increasing absolute value without change of sign.' '(×NA1)×NA2+|NA1' '' 0 'Increasing rank of XA2 to rank of XA1.' '((((⍴⍴XA1)-⍴⍴XA2)⍴1),⍴XA2)⍴XA2' '' 0 'Increasing the dimension of XV to multiple of IS.' 'XV,(IS|-⍴XV)↑0/XV' '' 0 'Incrementing cyclic counter NA with upper limit NS.' '1+NS⊤NA' '' 0 'Index Generator with step IS. From X to Y.' 'N←X+IS×⍳0⌈(IS≠0)+⌊(Y-X)÷IS' '0=⎕IO' 2 'Index Generator with step IS. From X to Y.' 'N←X+IS×¯1+⍳0⌈(IS≠0)+⌊|(Y-X)÷IS' '1=⎕IO' 2 'Index Generator. Range from X to Y.' 'N←X+(×N)×⍳1+⌊|N←Y-X' '0=⎕IO' 2 'Index Generator. Range from X to Y.' 'N←X+0,(×N)×⍳⌊|N←Y-X' '1=⎕IO' 2 'Index of (first) maximum element of NV.' 'NV⍳⌈/NV' '' 0 'Index of (first) minimum element of NV.' '1↑⍋NV' '' 0 'Index of (first) minimum element of NV.' 'NV⍳⌊/NV' '' 0 'Index of first differing element in vectors XV1 and XV2.' '(XV2≠XV1)⍳1' '' 0 'Index of first maximum element of NV.' '1↑⍒NV' '' 0 'Index of first non-blank, counted from the rear.' '('' ''=CV)⊥1' '' 0 'Index of first occurrence of elements of CV2.' '⌊/CV1⍳CV2' '' 0 'Index of first occurrence of XA in XV (circularly) after IS.' '⎕IO+(⍴XV)|IS+(IS⌽XV)⍳XA' '' 0 'Index of first occurrences of rows of XA as rows of XM.' '⎕IO++⌿^⍀XM∨.≠⍉XA' '' 0 'Index of first one after index IS in BV.' 'IS+(IS↓BV)⍳1' '' 0 'Index of first satisfied condition in BV.' 'BV⍳1' '' 0 'Index of key XA in key vector XV.' 'XV⍳XA' '' 0 'Index of last maximum element of NV.' '¯1↑⍋NV' '' 0 'Index of last occurrence of XA in XV (⎕IO-1 if not found).' '((¯1 1)[2×⎕IO]+⍴XV)-(⌽XV)⍳XA' '' 0 'Index of last occurrence of XA in XV (0 if not found).' '(1+⍴XV)-(⌽XV)⍳XA' '' 0 'Index of last occurrence of XA in XV, counted from the rear.' '(⌽XV)⍳XA' '' 0 'Index of the elements of NV1 in NV2.' '(((1,A)/B)⌊1+⍴NV2)[(⍴NV2)↓(+\1,A←(1↓A)≠¯1↓A←A[B])[⍋B←⍋A←NV2,NV1]]' '' 0 'Index of the largest item.' 'IS←⊃⍒N' '' 2 'Index of the largest item.' 'IO←N⍳⌈/N' '' 2 'Index of the smallest item.' 'IS←⊃⍋N' '' 2 'Index of the smallest item.' 'IO←N⍳⌊/N' '' 2 'Index origin (⎕IO) as a vector.' '⍳1' '' 0 'Index pairs of saddle points.' '⎕IO+(⍴NM)⊤-⎕IO-(,(NM=(⍴NM)⍴⌈⌿NM)^NM=⍉(⌽⍴NM)⍴⌊/NM)/⍳×/⍴NM' '' 0 'Indexing independent of index origin.' 'XV[⎕IO+IA]' '' 0 'Indexing scattered elements.' '(,XA)[⎕IO+(⍴XA)⊥IM-⎕IO]' '' 0 'Indexing when rank is not known beforehand.' '⍎''XA['',((¯1+⍴⍴XA)⍴'';''),''IA]''' '' 0 'Indexing with boolean value BA (plotting a curve).' ''' *''[⎕IO+BA]' '' 0 'Indicating equal elements of XV as a logical matrix.' '⍉XV∘.=(1 1⍉<\XV∘.=XV)/XV' '' 0 'Indicator of first occurrence of each unique element of XV.' '(XV⍳XV)=⍳⍴XV' '' 0 'Indices of all occurrences of elements of XA in XV.' '(XV∊XA)/⍳⍴XV' '' 0 'Indices of all occurrences of XS in XV.' '(XS=XV)/⍳⍴XV' '' 0 'Indices of elements of XM2 in corr. rows of XM1 (XM1[i;]⍳XM2[i;]).' '1++/^\1 2 1 3⍉XM2∘.≠XM1' '' 0 'Indices of elements XA2 in array XA1.' '⎕IO+(⍴XA1)⊤(-⎕IO)+(,XA1∊XA2)/⍳⍴,XA1' '' 0 'Indices of first blanks in rows of array CA.' '⎕IO++/^\'' ''≠CA' '' 0 'Indices of last non-blanks in rows.' '('' ''≠CA)⌈.×⍳¯1↑⍴CA' '' 0 'Indices of ones in logical vector BV.' '(+/BV)↑⍒BV' '' 0 'Indices of ones in logical vector BV.' '(+\BV)⍳⍳+/BV' '' 0 'Indices of ones in logical vector BV.' 'BV/⍳⍴BV' '' 0 'Indices of subvectors of length IS starting at IV+1.' 'IV∘.+⍳IS' '' 0 'Initialize a matrix with no rows.' 'M←0 IS⍴''''' '' 2 'Initialize variables to the empty vector.' 'N←B←I←F←Z←⍬' '' 2 'Input continuation.' 'V←1 2 3 4 5 6 7 8 9 0,⎕' '' 2 'Input of row IS of text matrix CM.' 'CM[IS;]←(≢CM)↑⍞' '' 0 'Insert NS items S after each item of V.' 'V←∊V,¨⊂NS⍴S' '' 2 'Insert NS items S before each item of V.' 'V←∊(⊂NS⍴S),¨V' '' 2 'Insert the first item of C where C is in CM.' ('CM←↑∊¨⊂[1]CM',(⎕ucs 8867),'((,CM∊C)/,CM)←↑C') '0=⎕IO' 2 'Insert the first item of C where C is in CM.' ('CM←↑∊¨⊂[2]CM',(⎕ucs 8867),'((,CM∊C)/,CM)←↑C') '1=⎕IO' 2 'Insert vector for IV[i] elements before i:th element.' '(⍳+/A)∊+\A←1+IV' '' 0 'Insert vector for IV[i] zeroes after i:th subvector.' '(⍳(⍴BV)++/IV)∊+\1+¯1↓0,(1⌽BV)\IV' '' 0 'Insert X after positions P in V.' 'V←(V,X)[⍋(⍳⍴V),P]' '(⍴P)=⍴X' 2 'Inserting IS *''s into vector CV after indices IV.' '(CV,''*'')[(⎕IO+⍴CV)⌊⍋(⍳⍴CV),(IS×⍴IV)⍴IV]' '' 0 'Inserting vector XV into matrix XM after row IS.' 'XM[⍳IS;],[1]((1↓⍴XM)↑XV),[1](2↑IS)↓XM' '' 0 'Inserting vector XV to the end of matrix XM.' '(A↑XM),[⍳1](1↓A←(⍴XM)⌈0,⍴XV)↑XV' '' 0 'Inserting XS after each element of XV.' ',XV,[1.1]XS' '' 0 'Inserting XV1 into XV2 after index IS.' '(IS↑XV2),XV1,IS↓XV2' '' 0 'Integer and fractional parts of positive numbers.' '0 1⊤NA' '' 0 'Integer representation of logical vectors.' '2⊥BA' '' 0 'INTEGER. Truncate to whole number.' 'IA←(×NA)×⌊|NA' '' 2 'Integral+fractional part of positive number.' 'FA←0 1⊤NA' '' 2 'Interpolated value of series (NV1,NV2) at NS.' 'NS⊥NV2⌹NV1∘.*⌽-⎕IO-⍳⍴NV1' '' 0 'Interpretation of roman numbers.' '+/A×¯1*A<1⌽A←0,(1000 500 100 50 10 5 1)[''MDCLXAVI''⍳XA]' '' 0 'Intersection of sets, ⍞.' '(XV∊XA)/XV' '' 0 'Intersection of two sets of numbers.' 'V←(X∊Y)/X' '' 2 'Intersection of two sets of numbers.' 'V←Y~Y~X' '' 2 'Inverse of +\. Difference of adjacent pairs.' 'N←¯2-/0,N' '' 2 'Inverting a permutation.' '⍋IV' '' 0 'Inverting a permutation.' 'IV⍳⍳⍴IV' '' 0 'Inverting a permutation.' 'A←⍳⍴IV ⋄ A[IV]←A ⋄ A' '' 0 'Inverting a permutation.' 'I←⍋N' '' 2 'Is CX lexically greater than CY?' 'BS←>/⍋⎕UCS↑CX CY' '' 2 'Is CX lexically greater than or equal to CY?' 'BS←</⍒⎕UCS↑CX CY' '' 2 'Is CX lexically less than CY?' 'BS←>/⍒⎕UCS↑CX CY' '' 2 'Is CX lexically less than or equal to CY?' 'BS←</⍋⎕UCS↑CX CY' '' 2 'IS degree polynomial fit given X,Y values.' 'C←Y⌹X∘.*⍳IS+1' '0=⎕IO' 2 'IS degree polynomial fit given X,Y values.' 'C←Y⌹X∘.*(⍳IS+1)-1' '1=⎕IO' 2 'IS first figurate numbers.' '#NAME?' '' 0 'IS first triangular numbers.' '#NAME?' '' 0 'Is IS (YYYY) a leap year?' 'B←0≠.=400 100 4∘.|IS' '' 2 'IS largest elements of NV in order of occurrence.' '((⍋⍒NV)∊⍳IS)/NV' '' 0 'IS months from "0" given IS (YYYYMM) date.' 'IS←0 12⊥0 100⊤IS' '' 2 'Is N an integer in range [XY) XY ←→ lo,hi.' 'B←</(N<⌈N),N∘.<XY' '' 2 'Is N in range (XY) XY ←→ lo,hi.' 'B←((⊃XY)<N)∧N<⊃⌽XY' '' 2 'Is N in range (XY] XY ←→ lo,hi.' 'B←>/N∘.>XY' '' 2 'Is N in range [XY) XY ←→ lo,hi.' 'B←</N∘.<XY' '' 2 'Is N in range [XY] XY ←→ lo,hi.' 'B←((⊃XY)≤N)∧N≤⊃⌽XY' '' 2 'IS place-base NS rep. of a fraction.' 'NA←(¯1⌽⍳1+⍴⍴FA)⍉⌊(IS⍴NS)⊤(NS*IS)×1|FA' '' 2 'IS smallest elements of NV in order of occurrence.' '((⍋⍋NV)∊⍳IS)/NV' '' 0 'IS:th subvector of XV (subvectors indicated by BV).' '(IS=+\BV)/XV' '' 0 'IS:th subvector of XV (subvectors separated by XV[1]).' '1↓(IS=+\XV=1↑XV)/XV' '' 0 'IS×IS identity matrix.' '(⍳IS)∘.=⍳IS' '' 0 'IS×IS identity matrix.' '(IS,IS)⍴1,IS⍴0' '' 0 'IS×IS lower triangular matrix.' '(⍳IS)∘.≥⍳IS' '' 0 'IS×IS upper triangular matrix.' '(⍳IS)∘.≤⍳IS' '' 0 'ISBN check digit generator from C.' 'IS←|¯11|+/+\10↑⍎¨C' 'C∧.∊⎕D' 2 'IS-degree polynomial (curve) fit of points (NV1,NV2).' '⌽NV2⌹NV1∘.*0,⍳IS' '' 0 'Isometric scaling by 2.1.' 'ZA←ZA×2.1' '' 2 'ISth subvector of V given boolean B.' ('V←IS⊃(+\B)',(⎕ucs 8838 86)) '' 2 'ISth subvector of V given length L.' ('V←IS⊃(L/⍳⍴L)',(⎕ucs 8838 86)) '' 2 'Item equals. Find item V in array A.' 'BA←A≡¨⊂V' '' 2 'Ith starting indicators BV1.' '(+\BV1)∊BV2/⍳⍴BV2' '' 0 'IV is the ranking of NA in same order.' 'IV←⍋⍋NA' '' 2 'IV is the ranking of NA in same order.(fast).' 'IV[I]←IV←⍳⍴I←⍋NA' '' 2 'IV2-shaped array of random numbers within ( IV1[1],IV1[2] ].' 'IV1[1]+?IV2⍴--/IV1' '' 0 'Join XA real and YA imaginary to complex.' 'ZA←AX+¯11○AY' '' 2 'Joining a set of variables into one variable.' 'VV←N B I F Z' '' 2 'Joining array of arrays - horizontally.' 'A←↑,/AA' '' 2 'Joining array of arrays - vertically.' 'M←↑,[0]/AA' '0=⎕IO' 2 'Joining array of arrays - vertically.' 'A←↑,[1]/AA' '1=⎕IO' 2 'Joining conforming matrices - horizontally.' 'M←⊃,/MW MX MY' '' 2 'Joining corresponding items in vectrices.' 'AV←⊃,¨/VA' '' 2 'Joining current date.' 'IS←0 100 100⊥3↑⎕TS' '' 2 'Joining matrices - vertically.' 'M←↑⊃,/⊂[1]¨MW MX MY' '0=⎕IO' 2 'Joining matrices - vertically.' 'M←↑⊃,/⊂[2]¨MW MX MY' '1=⎕IO' 2 'Joining pairs of ones.' 'BA∨≠\BA' '' 0 'Joining sentences.' 'XV,0⍴XA' '' 0 'Julian date (YYYYDDD).' 'IS←(1000×Y)+D+(M⊃0 0,+\30+1 ¯2,∊5 4⍴¨⊂1 0)+(M>2)∧0=4|Y' '1=⎕IO' 2 'Julian date (YYYYDDD).' 'IS←(1000×Y)+D+(M⊃0,+\30+1 ¯2,∊5 4⍴¨⊂1 0)+(M>2)∧0=4|Y' '0=⎕IO' 2 'Julian day (DDD) given Y M D.' 'IS←D+(M⊃0 0,+\30+1 ¯2,∊5 4⍴¨⊂1 0)+(M>2)∧0=4|Y' '1=⎕IO' 2 'Julian day (DDD) given Y M D.' 'IS←D+(M⊃0,+\30+1 ¯2,∊5 4⍴¨⊂1 0)+(M>2)∧0=4|Y' '0=⎕IO' 2 'Justifying left.' '(+/^\'' ''=CA)⌽CA' '' 0 'Justifying left fields of XV (lengths IV) to length IS.' '(,IV∘.>(⍳IS)-⎕IO)\XV' '' 0 'Justifying right.' '(1-('' ''=CA)⊥1)⌽CA' '' 0 'Justifying right.' '(-+/^\⌽'' ''=CA)⌽CA' '' 0 'Justifying right fields of XV (lengths IV) to length IS.' '(,IV∘.>⌽(⍳IS)-⎕IO)\XV' '' 0 'Justifying text CV to right edge of field of width IS.' '(-IS)↑CV' '' 0 'Juxtapositioning planes of rank 3 array XQ.' '(×⌿2 2⍴1,⍴XQ)⍴2 1 3⍉XQ' '' 0 'Keep even words in a phrase.' 'C←(≠\C='' '')/C' '' 2 'Keep everything from ⊃C to ⊃1↓C in V.' 'V←(V⍳⊃1↓C)↑V←(1+V⍳⊃C)↓V' '0=⎕IO' 2 'Keep everything from ⊃C to ⊃1↓C in V.' 'V←(¯1+V⍳⊃1↓C)↑V←(V⍳⊃C)↓V' '1=⎕IO' 2 'Keep everything in range [0,NS).' 'N←(>/N∘.>0 NS)/N' '' 2 'Keep everything up to the 1st return.' 'C←(∧\C≠⎕UCS 10)/C' '' 2 'Keep odd words in a phrase.' 'C←(≠\¯1↓1,C='' '')/C' '' 2 'Keep PFK within range 1-12.' 'PFK←12+¯12|PFK' '' 2 'Koch island new generation.' 'Z←¯3↓,Z-[0]((2-/Z÷3),0)∘.×0 1,(1+1D60),2' '0=⎕IO' 2 'Koch island new generation.' 'Z←¯3↓,Z-[1]((2-/Z÷3),0)∘.×0 1,(1+1D60),2' '1=⎕IO' 2 'Kronecker delta of IA1 and IA2 (element of identity matrix).' 'IA2=IA1' '' 0 'L sequences of IS ones and zeros.' 'B←IS/L⍴1 0' '' 2 'Largest possible number.' 'FS←⌊/⍬' '' 2 'Last element of numeric vector NV as a scalar.' '0⊥NV' '' 0 'Last ones in groups of ones.' 'BV>1↓BV,0' '' 0 'Last part of numeric code ABBB.' '1000|IA' '' 0 'Last row of matrix XA as a vector.' '0⊥XA' '' 0 'Leading ones (`^\) in each subvector of BV2 indicated by BV1.' '~≠\(BV2≤BV1)\A≠¯1↓0,A←~(BV2≤BV1)/BV2' '' 0 'Leading ones (turn off all ones after first zero).' '^\BA' '' 0 'Leading zeroes for IV in fields of width IS.' '0 1↓(2↑IS+1)⍕IV∘.+,10*IS' 'IV≥0' 0 'Least squares linear fit given X,Y values.' 'V←N+.×Y⌹N←X∘.*0 1' '' 2 'Left justify C in field width NS.' 'C←(-NS)↑C' '' 2 'Left justify matrix CM.' 'CM←(+/∧\CM='' '')⌽CM' '' 2 'Leftmost neighboring elements.' '((-⍴⍴NA)↑¯1)↓0,NA' '' 0 'Leftmost neighboring elements cyclically.' '¯1⌽XA' '' 0 'Length of polygon.' 'S←+/|2-/Z' '' 2 'Length vector given boolean vector B.' 'L←(1↓P,1+⍴B)-P←B/⍳⍴B' '' 2 'Length vector given first position indices.' 'L←¯2-/P,1+⍴B' '' 2 'Length vector given last position indices.' 'L←¯2-/0,P' '' 2 'Length vector given unique items in V.' 'L←+/U∘.≡V' '' 2 'Lengthening matrix XM1 to be compatible with XM2.' '((1 0×⍴XM2)⌈⍴XM1)↑XM1' '' 0 'Lengths of groups of ones in BV.' '(A>0)/A←(1↓A)-1+¯1↓A←(~A)/⍳⍴A←0,BV,0' '' 0 'Lengths of subvectors of XV having equal elements.' '(1↓A)-¯1↓A←(A,1)/⍳1+⍴A←1,(1↓XV)≠¯1↓XV' '' 0 'Life: next generation given O<=>140 3x3 wins.' 'M←¯1⌽¯1⊖⊃∨/O⍷¨⊂M' '' 2 'Limiting indices and giving a default value XS.' '(XV,XS)[(1+⍴XV)⌊IA]' '' 0 'Limiting NA between NV[1] and NV[2], inclusive.' 'NV[1]⌈NV[2]⌊NA' '' 0 'Limits NA to fit in ⍕ field IV[1 2].' '(NA⌈1↓A)⌊1↑A←(2 2⍴¯1 1 1 ¯.1)+.×10*(-1↓IV),-/IV+IV>99 0' '' 0 'List of functions and operators without '' ''.' 'VV←(⊂[1]⎕NL 3 4)~¨'' ''' '0=⎕IO' 2 'List of functions and operators without '' ''.' 'VV←(⊂[2]⎕NL 3 4)~¨'' ''' '1=⎕IO' 2 'List of names in CM (one per row).' '1↓,'','',CM' '' 0 'Locating field number IS starting with first element of CV.' '(IS=+\CV=1↑CV)/CV' '' 0 'Locations of texts between and including quotes.' 'A∨¯1↓0,A←≠\CV=''''''''' '' 0 'Locations of texts between and including quotes.' 'A∨¯1↓0,A←2|+\CV=''''''''' '' 0 'Locations of texts between quotes.' 'A^¯1↓0,A←≠\CV=''''''''' '' 0 'Locations of texts between quotes.' 'A^¯1↓0,A←2|+\CV=''''''''' '' 0 'Lower triangular matrix: IS by IS.' 'M←(⍳IS)∘.>⍳IS' '' 2 'Magnitude of fractional part.' '1||NA' '' 0 'Magnitude of fractional part of number.' 'FA←1||NA' '' 2 'Magnitude. Absolute Value of NA.' 'NA←|NA' '' 2 'Major diagonal of array XA.' '(1*⍴XA)⍉XA' '' 0 'Major diagonal of matrix XM.' '1 1⍉XM' '' 0 'Mask Operator. Merge X and Y using B.' 'V[⍋~B]←V←(B/X),(~B)/Y' '' 2 'Matricize - for any rank.' 'M←,[¯1↓⍳⍴⍴A]1/A' '' 2 'Matricize - for any rank.' 'M←((×/¯1↓⍴A),¯1↑1,⍴A)⍴A' '' 2 'Matricize - rank 0, 1, or 2.' 'M←(¯2↑1 1,⍴A)⍴A' '' 2 'Matrix for choosing all subsets of XV (truth table).' '((⍴XV)⍴2)⊤¯1+⍳2*⍴XV' '' 0 'Matrix of all indices of XA.' '⎕IO+(⍴XA)⊤(⍳×/⍴XA)-⎕IO' '' 0 'Matrix of vectors to vector of matrices.' 'VM←↑¨⊂[1]MV' '0=⎕IO' 2 'Matrix of vectors to vector of matrices.' 'VM←↑¨⊂[2]MV' '1=⎕IO' 2 'Matrix product.' 'NA1+.×NA2' '¯1↑⍴NA1 ←→ 1↑⍴NA2' 0 'Matrix product.' 'M←MX+.×MY' '' 2 'Matrix to vector at character CS.' 'V←¯1↓(,⌽1,∨\CS≠⌽CM)/,CM,CS' '' 2 'Matrix to vector of column vectors.' 'VV←,⌿M' '' 2 'Matrix to vector of row vectors.' 'VV←⊂[1]M' '0=⎕IO' 2 'Matrix to vector of row vectors.' 'VV←⊂[2]M' '1=⎕IO' 2 'Matrix with IS columns NV.' '⍉(IS,⍴NV)⍴NV' '' 0 'Matrix with IV[i] leading ones on row i.' 'IV∘.≥⍳⌈/IV' '' 0 'Matrix with IV[i] leading zeroes on row i.' 'IV∘.<⍳⌈/IV' '' 0 'Matrix with IV[i] trailing ones on row i.' 'IV∘.≥⌽⍳⌈/IV' '' 0 'Matrix with IV[i] trailing zeroes on row i.' 'IV∘.<⌽⍳⌈/IV' '' 0 'Matrix with shape of XM and XV as its columns.' '⍉(⌽⍴XM)⍴XV' '' 0 'Maxima (⌈/) of elements of subvectors of NV indicated by BV.' 'NV[A[BV/⍋(+\BV)[A←⍒NV]]]' '' 0 'Maxima of elements of subsets of XV specified by BA.' 'A+(XV-A←⌊/XV)⌈.×BA' '' 0 'Maximum of elements of NV.' '⌈/NV' '' 0 'Maximum of magnitude of NM preserving sign.' 'N←N××.5-(⌈/NM)≠N←⌈/|NM' '' 2 'Maximum of magnitude of NM.' 'N←⌈/|NM' '' 2 'Maximum of negative value of NM.' 'N←⌊/NM,0' '' 2 'Maximum of NV1 with weights NV2.' 'NV2⌈.×NV1' '' 0 'Maximum of positive value of NM.' 'N←⌈/NM,0' '' 2 'Maximum table.' '(⍳IS)∘.⌈⍳IS' '' 0 'Maximum value of NM.' 'N←⌈/NM' '' 2 'Meaning of life.' '⍎⊖⍕⊃⊂|⌊-*+○⌈×÷!⌽⍉⌹~⍴⍋⍒,⍟?⍳0' '' 0 'Median.' 'NV[(⍋NV)[⌈.5×⍴NV]]' '' 0 'Median of non-empty N.' 'MED←.5×+/N[(⍋N)[⌈.5×¯1 0+⍴N←,N]]' '0=⎕IO' 2 'Median of non-empty N.' 'MED←.5×+/N[(⍋N)[⌈.5×0 1+⍴N←,N]]' '1=⎕IO' 2 'Merge X and Y alternately.' 'V←∊X,¨Y' '' 2 'Merging vectors XV1 and XV2 alternately.' ',XV2,[⎕IO+.5]XV1' '' 0 'Merging XV1 and XV2 under control of BV (mesh).' '(XV1,XV2)[⍋⍋BV]' '' 0 'Merging XV1 and XV2 under control of BV (mesh).' '(XV2,XV1)[⍋⍒BV]' '' 0 'Merging XV1 and XV2 under control of BV (mesh).' 'A[⍋BV]←A←XV2,XV1 ⋄ A' '' 0 'Merging XV1 and XV2 under control of BV (mesh).' 'A←BV\XV1 ⋄ A[(~BV)/⍳⍴BV]←XV2 ⋄ A' '' 0 ('Merging XV1, XV2, XV3, ',(⎕ucs 8230),' under control of IV (mesh).') ('(XV1,XV2,XV3,',(⎕ucs 8230),')[⍋⍋IV]') '' 0 'Mesh V according to mask pattern IV.' 'V←V[⍋⍋IV]' '' 2 'Mesh X and Y in V using boolean pattern B.' 'V[⍋B]←V←X,Y' '' 2 'Mid product of AX and AY.' 'A←AX,.×AY' '' 2 'Minima (⌊/) of elements of subvectors of NV indicated by BV.' 'NV[A[BV/⍋(+\BV)[A←⍋NV]]]' '' 0 'Minimum of elements of NV.' '⌊/NV' '' 0 'Minimum of magnitude of NM preserving sign.' 'N←N××.5-(⌊/NM)≠N←⌊/|NM' '' 2 'Minimum of magnitude of NM.' 'N←⌊/|NM' '' 2 'Minimum of NV1 with weights NV2.' 'NV2⌊.×NV1' '' 0 'Minimum value of NM.' 'N←⌊/NM' '' 2 'Mirror in X if B.' 'ZA←(¯10+~BA)○ZA' '' 2 'Mirror in X.' 'ZA←+ZA' '' 2 'Mirror in Y.' 'ZA←-+ZA' '' 2 'Mode(s) of data.' 'MODE←(I=⌈/I←+⌿N∘.=NU)/NU←(∨⌿<\N∘.=N)/N' '' 2 'MODULO of NAX and NAY.' 'NA←NAY|NAX' '' 2 'Move blanks to end of each row of M.' '(,M)←(,M)[⍋,(2×⍳≢M)+[0]'' ''=M]' '0=⎕IO' 2 'Move blanks to end of each row of M.' '(,M)←(,M)[⍋,(2×⍳≢M)+[1]'' ''=M]' '1=⎕IO' 2 'Move figure by x=6, y=9.' 'ZA←ZA+6J9' '' 2 'Move items X to end of Y.' 'V←Y[⍋Y∊X]' '' 2 'Move set of points NM into first quadrant.' '1 2 1⍉NM∘.-⌊/NM' '' 0 'Moving all blanks to end of each row.' '(⍴CA)⍴(,(+/A)∘.>-⎕IO-⍳¯1↑⍴CA)\(,A←CA≠'' '')/,CA' '' 0 'Moving all blanks to end of text.' 'CV[⍒'' ''≠CV]' '' 0 'Moving elements satisfying condition BV to the start of XV.' 'XV[⍒BV]' '' 0 'Moving index of width IS for vector XV.' '(0,⍳(⍴XV)-IS)∘.+IS' '' 0 'Multiplication table.' '(⍳IS)∘.×⍳IS' '' 0 'Multiplication table: IS by IS.' 'M←(1+⍳IS)∘.×1+⍳IS' '0=⎕IO' 2 'Multiplication table: IS by IS.' 'M←(⍳IS)∘.×⍳IS' '1=⎕IO' 2 'Multiply each row of NM by vector N.' 'NM←NM×[0]N' '0=⎕IO' 2 'Multiply each row of NM by vector N.' 'NM←NM×[1]N' '1=⎕IO' 2 'N column matrix from N vectors.' 'M←↑[0]V W X Y' '0=⎕IO' 2 'N column matrix from N vectors.' 'M←↑[1]V W X Y' '1=⎕IO' 2 'N column matrix from N vectors.' 'M←⍉↑V W X Y' '' 2 'N row matrix from N vectors.' 'M←↑V W X Y' '' 2 'Negative infinity; the smallest representable value.' '⌈/⍬' '' 0 'Nested to simple char image w/o extra blanks.' 'CM←I↓(-I←(-2-2>⍴⍴AA)↑|≡AA)↓⍕⊂1/AA' '' 2 'None, neither.' '~∨/BA' '' 0 'Not first zero (≤\) in each subvector of BV2 indicated by BV1.' '~(B^BV1)∨(B∨BV1)\A>¯1↓0,A←(B∨BV1)/B←~BV2' '' 0 'Not first zero (turn on all zeroes after first zero).' '≤\BA' '' 0 'Not leading zeroes (turn on all zeroes after first one).' '∨\BA' '' 0 'Not leading zeroes(∨\) in each subvector of BV2 indicated by BV1.' '≠\(BV2∨BV1)\A≠¯1↓0,A←(BV2∨BV1)/BV2' '' 0 'NS differences of differences of adjacents.' 'N←⊃-//NS 1/¯2 N' '' 2 'NS months after date IS (YYYYMM).' 'I←1+0 100⊥0 12⊤(0 12⊥0 100⊤IS)+⍳NS' '0=⎕IO' 2 'NS months after date IS (YYYYMM).' 'I←1+0 100⊥0 12⊤(0 12⊥0 100⊤IS)-1-⍳NS' '1=⎕IO' 2 'NS months before date IS (YYYYMM).' 'I←1+0 100⊥0 12⊤(0 12⊥0 100⊤IS)-2+⌽⍳NS' '0=⎕IO' 2 'NS months before date IS (YYYYMM).' 'I←1+0 100⊥0 12⊤(0 12⊥0 100⊤IS)-1+⌽⍳NS' '1=⎕IO' 2 'NS spokes of unit wheel.' 'VZ←0,¨*○0J2×(1+⍳NS)÷NS' '' 2 'NS spokes of unit wheel.' 'VZ←0,¨*○0J2×(⍳NS)÷NS' '' 2 'NS-point spline.(M=Bezier matrix, Z ctrl pts).' 'Z←(,[⍬](1+⍳NS)÷NS)⊥M+.×Z' '0=⎕IO' 2 'NS-point spline.(M=Bezier matrix, Z ctrl pts).' 'Z←(,[⍬](⍳NS)÷NS)⊥M+.×Z' '1=⎕IO' 2 'Number and its negative (''plus minus'').' '1 ¯1×NS' '' 0 'Number of ?s intersecting ?s (NV1=starts, NV2=stops).' '+/A^⍉A←NV1∘.≤NV2' '' 0 'Number of areas intersecting areas in X.' '+/A^⍉A←^/X[;A⍴1;]≤2 1 3⍉X[;(A←≢X)⍴2;]' '⍴NQ ←→ (n × 2 × dim)' 0 'Number of columns in A as vector.' 'IO←⊃⌽⍴A' '' 2 'Number of columns in A.' 'IS←⊃⌽⍴A' '' 2 'Number of columns in array XA.' '(⍴XA)[⍴⍴XA]' '' 0 'Number of columns in array XA as a scalar.' '0⊥⍴XA' '' 0 'Number of columns in matrix XM.' '¯1↑⍴XM' '' 0 'Number of columns in matrix XM.' '1↓⍴XM' '' 0 'Number of columns in matrix XM.' '(⍴XM)[2]' '' 0 'Number of combinations of NA1 objects taken NA2 at a time.' 'NA2!NA1' '' 0 'Number of days in month IS of years IA (for all leap years).' '(12⍴7⍴31 30)[IS]-0⌈¯1+2⊥(IS=2),[.1](0≠400|IA)-(0≠100|IA)-0≠4|IA' '' 0 'Number of days in month IS of years IA (for most leap years).' '(12⍴7⍴31 30)[IS]-0⌈¯1+2⊥(IS=2),[.1]0≠4|IA' '' 0 'Number of decimals (up to IS) of elements of NA.' '0+.≠(⌈(10*IS)×10*⎕IO-⍳IS+1)∘.|⌈NA×10*IS' '' 0 'Number of decimals of elements of NV.' '⌊10⍟(⍎(''.''≠A)/A←⍕NV)÷NV' '' 0 'Number of digit positions in integers in IA.' '1+⌊10⍟(IA=0)+IA×(1 ¯10)[1+IA<0]' '' 0 'Number of digit positions in scalar NS (depends on ⎕PP).' '⍴⍕NS' '' 0 'Number of digitpositions in integers in IA.' '1+(IA<0)+⌊10⍟|IA+0=IA' '' 0 'Number of digits in positive integers in IA.' '1+⌊10⍟IA+0=IA' '' 0 'Number of elements (also of a scalar).' '×/⍴XA' '' 0 'Number of elements (also of a scalar).' '⍴,XA' '' 0 'Number of elements in A as vector.' 'IO←⍴,A' '' 2 'Number of elements in a plane of 3D A.' 'IS←×/1↓⍴A' '' 2 'Number of elements in A.' 'IS←×/⍴A' '' 2 'Number of elements satisfying condition BV.' '+/BV' '' 0 'Number of leading blanks.' 'NA←+/∧\CA='' ''' '' 2 'Number of occurrences of scalar XS in array XA.' 'XS+.=,XA' '' 0 'Number of occurrences of scalar XS in array XA.' '+/XS=,XA' '' 0 'Number of permutations of (N,K) combinations.' 'NS←(!K)×K!N' '' 2 'Number of permutations of NA1 objects taken NA2 at a time.' '(!NA2)×NA2!NA1' '' 0 'Number of rows in array XA (also of a vector).' '×/¯1↓⍴XA' '' 0 'Number of rows in M as vector.' 'IO←1↑⍴M' '' 2 'Number of rows in M.' 'IS←≢M' '' 2 'Number of rows in matrix XM.' '≢XM' '' 0 'Number of rows in matrix XM.' '¯1↓⍴XM' '' 0 'Number of rows in matrix XM.' '(⍴XM)[1]' '' 0 'Number of rows in matrix XM.' '≢XM' '' 0 'Number of sortable columns at a time using ⊥ and alphabet CV.' '⌊(1+⍴CV)⍟2*(A=¯1+A←2*⍳128)⍳1' '' 0 'Number of trailing blanks.' 'NA←+/∧\⌽CA='' ''' '' 2 'Numeric headers (elements of NV) for rows of table XM.' '(3⌽7 0⍕NV∘.+,0),⍕XM' '' 0 'Numeric matrix of (N,K) combinations.' 'M←(∧⌿2<⌿M)/M←1+((-K)↑⍳N+1)⊤⍳(!K)×K!N' '0=⎕IO' 2 'Numeric matrix of (N,K) combinations.' 'M←(∧⌿2<⌿M)/M←1+((-K)↑⍳N)⊤⍳(!K)×K!N' '1=⎕IO' 2 'Occurences of the elements of NV.' '|-⌿(2,⍴NV)⍴⍋⍋NV,NV' '' 0 'Occurrences of string CV1 in string CV2.' '(^⌿(¯1+⍳⍴CV1)⌽(CV1∘.=CV2),0)/⍳1+⍴CV2' '' 0 'Occurrences of string XV1 in string XV2.' '(XV2[A∘.+¯1+⍳⍴XV1]^.=XV1)/A←(A=1↑XV1)/⍳⍴A←(1-⍴XV1)↓XV2' '' 0 'Occurrences of string XV1 in string XV2.' '((-A)↓XV1^.=(A,1+⍴XV2)⍴XV2)/⍳(⍴XV2)+1-A←⍴XV1' '' 0 'Ohm''s Law - resistance of parallel resistors.' 'NS←÷+/÷N' '' 2 'One column matrix from vector V.' 'M←,['''']V' '' 2 'One row matrix from vector V.' 'M←,[¯.5]V' '0=⎕IO' 2 'One row matrix from vector V.' 'M←,[.5]V' '1=⎕IO' 2 'Ones, same shape and structure.' 'B←A=A' '' 2 'Ones, same shape plus one.' 'B←0×/V' '' 2 'Open a gap of IV1[i] after XV[IV2[i]] (for all i).' '((⍳(⍴XV)++/IV1)∊+\1+¯1↓0,((⍳⍴XV)∊IV2)\IV1)\XV' '' 0 'Open a gap of IV1[i] before XV[IV2[i]] (for all i).' '((⍳(⍴XV)++/IV1)∊+\1+((⍳⍴XV)∊IV2)\IV1)\XV' '' 0 'Open gaps before each item of V, L wide.' 'V←∊(-L+1)↑¨V' '' 2 'Open gaps between each item in V, L wide.' 'V←∊(L+1)↑¨V' '' 2 'Open gaps between points B in V, L wide.' 'V←((~B)-B\L)/V' '' 2 'Open NS-1 spaces between each item in V.' 'V←∊NS↑¨V' '' 2 'Ordinal numbers of words in CV that indices IA point to.' '⎕IO++/IA∘.≥('' ''=CV)/⍳⍴CV' '' 0 'Outer product.' 'M←X∘.×Y' '' 2 'Outline of bar chart of data V.' 'Z←0J1⊥1 0⌽2/↑V(⍳1+⍴V)' '0=⎕IO' 2 'Outline of bar chart of data V.' 'Z←0J1⊥1 0⌽2/0,↑V(⍳⍴V)' '1=⎕IO' 2 'Output assigned value.' '⎕←A←2 10⍴⍳20' '' 2 'Output of an empty line.' '0⍴XA←' '' 0 'Output of assigned value.' ((⎕ucs 8866),'NA←') '' 0 'Output of assigned value.' '⎕←XA←' '' 0 'Pack an array into a vector based on BA.' 'V←(,BA)/,A' '' 2 'Pairwise differences of successive columns (inverse of +\).' 'NA-((-⍴⍴NA)↑¯1)↓0,NA' '' 0 'Pairwise differences of successive elements of vector NV.' '(1↓NV)-¯1↓NV' '' 0 'Pairwise ratios of successive elements of vector NV.' '(1↓NV)÷¯1↓NV' '' 0 'Parallel projection of 3D object in M.' 'Z←0J1⊥M[1 0;]' '0=⎕IO' 2 'Parallel projection of 3D object in M.' 'Z←0J1⊥M[2 1;]' '1=⎕IO' 2 'Parity.' '≠/BA' '' 0 'Parity. Connect odd and even ones.' 'B←≠\B' '' 2 'Parity+connectors. Connect odd & even ones.' 'B←B∨≠\B' '' 2 'Pascal''s triangle of order IS (binomial coefficients).' '⍉A∘.!A←0,⍳IS' '' 0 'Pascal''s triangle of order IS.' 'V←V∘.!V←⍳IS+1' '0=⎕IO' 2 'Pascal''s triangle of order IS.' 'V←V∘.!V←0,⍳IS' '1=⎕IO' 2 'Perspective projection from distance D.' 'Z←0J1⊥M[1 0;]×D÷D-M[2;]' '0=⎕IO' 2 'Perspective projection from distance D.' 'Z←0J1⊥M[2 1;]×D÷D-M[3;]' '1=⎕IO' 2 'Pinpoint figure rather than polygon.' 'VZA←,¨ZA' '' 2 'Places between pairs of ones.' '(~BA)^≠\BA' '' 0 'Playing order in a cup for IS ranked players.' ',⍉(A⍴2)⍴(2*A←⌈2⍟IS)↑⍳IS' '' 0 'Plot of scalaroid function ''f'' for data V.' 'Z←V+¯11○f V' '' 2 'Plotting a curve from boolean values.' 'CA←'' *''[BA]' '0=⎕IO' 2 'Plotting a curve from boolean values.' 'CA←'' *''[1+BA]' '1=⎕IO' 2 'Plus Minus. Number and its negative.' 'NA←(⊂1 ¯1)×NA' '' 2 'Poisson distribution of states IA with average number NS.' '(*-NS)×(NS*IA)÷!IA' '' 0 'Poisson distribution of states X and Y avg.' 'N←(*-Y)×(Y*X)÷!X' '' 2 'Polynomial with roots NV.' '⌽((0,⍳⍴NV)∘.=+⌿~A)+.×(-NV)×.*A←((⍴NV)⍴2)⊤¯1+⍳2*⍴NV' '' 0 'Combining two lines into one.' ('X←''line1''',(⎕ucs 8867),'Y←''line2''') '' 2 'Position of comment in each row of array CA.' 'B←(<\''/*''⍷CA)∨⌽<\''/*''⍷⌽CA' '' 2 'Position of first blanks in rows of M.' 'P←(⊂[1]CM)⍳¨'' ''' '0=⎕IO' 2 'Position of first blanks in rows of M.' 'P←(⊂[2]CM)⍳¨'' ''' '1=⎕IO' 2 'Position of first item in CX not in C.' 'P←⊃(~CX∊C)/⍳⍴CX' '' 2 'Position of first occurrence of C in VV.' 'PO←VV⍳⊂C' '' 2 'Position of last Y in X - from left.' 'PO←(⌽X)⍳Y' '' 2 'Position of last Y in X.' 'PO←(⍴X)-(1,X≠Y)⊥1' '1=⎕IO' 2 'Position of last Y in X.' 'PO←1+(⍴X)-(1,X≠Y)⊥1' '0=⎕IO' 2 'Position of the first non-blank char by row.' 'P←(<\~CM∊'' '')+.×⍳⊃⌽⍴CM' '' 2 'Position of the first non-blank char.' 'PO←(C≠'' '')⍳1' '' 2 'Position of the first satisfied condition.' 'PO←B⍳1' '' 2 'Position of the last non-blank char by row.' 'P←(⊃⌽⍴CM)-(1,CM='' '')⊥1' '1=⎕IO' 2 'Position of the last non-blank char by row.' 'P←1+(⊃⌽⍴CM)-(1,CM='' '')⊥1' '0=⎕IO' 2 'Position of the last non-blank char.' 'PO←(⍴C)-(1,C='' '')⊥1' '1=⎕IO' 2 'Position of the last non-blank char.' 'PO←1+(⍴C)-(1,C='' '')⊥1' '0=⎕IO' 2 'Position of the NSth Y in X.' 'PO←(+\X≡¨Y)⍳NS' '' 2 'Position of trailing blanks in rows.' 'P←(CM≠'' '')⌈.×⍳⊃⌽⍴CM' '' 2 'Position of V in corresponding row of M.' 'N←M⌊.⍳V' '' 2 'Position(s) of V in each row of M.' 'VN←M,.⍳V' '' 2 'Positions of items in set C in string CX.' 'P←(CX∊C)/⍳⍴CX' '' 2 'Positions of ones given length vector L.' 'P←¯1↓+\0,L' '1=⎕IO' 2 'Positions of ones given length vector L.' 'P←¯1↓+\1,L' '0=⎕IO' 2 'Positions of ones in boolean vector B.' 'P←B/⍳⍴B' '' 2 'Positions of ones in boolean vector B.' 'P←(+/B)↑⍒B' '' 2 'Positions of start of C in string CX.' 'P←(C⍷CX)/⍳⍴CX' '' 2 'Positive infinity; the largest representable value.' '⌊/⍬' '' 0 'Positive maximum, at least zero (also for empty NV).' '⌈/NV,0' '' 0 'Postfix vector to each row of matrix.' 'M←↑,/M,⊂V' '' 2 'Predicted values of best linear fit (least squares).' 'A+.×NV2⌹A←NV1∘.*0 1' '' 0 'Predicted values of exponential (curve) fit.' '*A+.×(⍟NV2)⌹A←NV1∘.*0 1' '' 0 'Prefix vector to each row of matrix.' 'M←⊃,/V,⊂M' '' 2 'Present value of cash flows NA at int FS.' 'A←(÷1+FS)⊥⌽NA' '' 2 'Present value of cash flows NV at interest rate NS %.' '(÷1+NS÷100)⊥⌽NV' '' 0 'Prime numbers from 1...IS.' 'I←(2=+⌿0=I∘.|I)/I←1+⍳IS' '0=⎕IO' 2 'Prime numbers from 1...IS.' 'I←(2=+⌿0=I∘.|I)/I←⍳IS' '1=⎕IO' 2 'Product by bucket. U = buckets.' 'N←N×.*V∘.≡U' '⍴N ←→ ⍴V' 2 'Product of elements of NV.' '×/NV' '' 0 'Product of N.' 'NS←×/N' '' 2 'Product of two polynomials with coefficients NV1 and NV2.' '+⌿(⎕IO-⍳⍴NV1)⌽NV1∘.×NV2,0×1↓NV1' '' 0 'Products over subsets of XV specified by BA.' 'XV×.*BA' '' 0 'Progressive index of (without replacement).' '((⍴XV1)⍴⍋⍋XV1⍳XV1,XV2)⍳(⍴XV2)⍴⍋⍋XV1⍳XV2,XV1' '' 0 'Progressive index of (without replacement).' '((⍋XV1⍳XV1,XV2)⍳⍳⍴XV1)⍳(⍋XV1⍳XV2,XV1)⍳⍳⍴XV2' '' 0 'Prompt and response on same line.' 'V←(⍴V)↓⊃⍞ V←⍞←''Finished? ''' '' 2 'Proof. Returns items of VVX not in VVY list.' 'VV←VVX~VVY' '' 2 'Pythagorean: FA = hypotenuse NA = side ratio.' 'FA←4○NA' '' 2 'Pythagorean: FA = side NA = hyp:side ≥ 1.' 'FA←¯4○NA' '' 2 'Pythagorean: FA = side NA = side:hyp ≤ 1.' 'FA←0○NA' '' 2 'Pythagorean: Sum of the squares of AX.' 'NA←AX+.*2' '' 2 'Quick input of (×/I) strings.' 'VA←⍎¨I⍴''⍞''' 'I=⍴VA' 2 'Quick list of all functions and operators.' 'M←,['''']⎕CR¨⊂[1]⎕NL 3 4' '0=⎕IO' 2 'Quick list of all functions and operators.' 'M←,['''']⎕CR¨⊂[2]⎕NL 3 4' '1=⎕IO' 2 'Quick membership (∊) for positive integers.' 'A←(⌈/IV1,IV2)⍴0 ⋄ A[IV2]←1 ⋄ A[IV1]' '' 0 'Random numbers between 1-IS w/o repl.' 'I←1+IS?IS' '0=⎕IO' 2 'Random numbers between 1-IS w/o repl.' 'I←IS?IS' '1=⎕IO' 2 'Random numbers between 1-IS w/repl.' 'I←1+?IS⍴IS' '0=⎕IO' 2 'Random numbers between 1-IS w/repl.' 'I←?IS⍴IS' '1=⎕IO' 2 'Randomizing random numbers (in ⎕LX in a workspace).' '⎕RL←⎕TS+.*2' '' 0 'Range of non-empty N.' 'RANGE←(⌈/N)-⌊/N' '' 2 'Rank of A.' 'IO←⍴⍴A' '' 2 'Rank of array XA.' '⍴⍴XA' '' 0 'Rank of each item in an array.' 'AV←⍴¨⍴¨AA' '' 2 'Rank of the first item in an array.' 'IO←⊃⍴¨⍴¨AA' '' 2 'Rank of the first item in an array.' 'IO←⍴⍴⊃AA' '' 2 'Ravel of a matrix to IV[1] columns with a gap of IV[2].' '(A×IV[1]*¯1 1)⍴(A←(⍴XM)+(IV[1]|-≢XM),IV[2])↑XM' '' 0 'Real from ZAX and imaginary from ZAX.' 'ZA←(9○ZAX)+¯11○11○ZAY' '' 2 'Reassign main diagonal of matrix.' '(0 0⍉M)←1' '0=⎕IO' 2 'Reassign main diagonal of matrix.' '(1 1⍉M)←1' '1=⎕IO' 2 'Reblock. Cut VV into many ≤LS length vecs.' 'VV←↑,/((⍴¨VV)⍴¨⊂1+LS↑1)⊂¨VV' '' 2 'Rectangular scale by x=2,y=3.' 'ZA←(2,¯11○3)+.×9 11∘.○ZA' '' 2 'Reduce each item of VV by B.' 'VV←⊂[2]B/↑VV' '(⍴B)∧.=∊⍴¨VV' 2 'Reduction with function ⍺ in dimension IS, rank unchanged.' '((⍴XA)*IS≠⍳⍴⍴XA)⍴ ⍺/[IS]XA' '' 0 'Reduction with FUNCTION ⍺ without respect to shape.' '⍺/,NA' '' 0 'Regular unit polygon of NS edges.' 'Z←*○0J2×(⍳NS+1)÷NS' '0=⎕IO' 2 'Regular unit polygon of NS edges.' 'Z←*○0J2×(0,⍳NS)÷NS' '1=⎕IO' 2 'REMAINDER from division of NAX by NAY.' 'NA←(×NAX)×(|NAY)||NAX' '' 2 'Remove blank columns.' 'CM←('' ''∨.≠CM)/CM' '' 2 'Remove blank rows.' 'CM←(CM∨.≠'' '')⌿CM' '' 2 'Remove blanks in each string.' 'C←C~¨'' ''' '' 2 'Remove blanks.' 'C←C~'' ''' '' 2 'Remove duplicate blank columns.' 'CM←(¯1↓1,B∨1⌽B←'' ''∨.≠CM)/CM' '' 2 'Remove duplicate blank rows.' 'CM←(¯1↓1,B∨1⌽B←CM∨.≠'' '')⌿CM' '' 2 'Remove lead, trail, and duplicate blanks.' 'V←1↓(B∨1⌽B←0,C≠'' '')/'' '',C' '' 2 'Remove leading blank columns.' 'CM←(∨\'' ''∨.≠CM)/CM' '' 2 'Remove leading blank rows.' 'CM←(∨\CM∨.≠'' '')⌿CM' '' 2 'Remove leading blanks.' 'V←(∨\C≠'' '')/C' '' 2 'Remove punctuation.' 'C←C~''.,:;?!''' '' 2 'Remove trailing blank columns.' 'CM←(1-(1,'' ''∧.=CM)⊥1)↓[1]CM' '0=⎕IO' 2 'Remove trailing blank columns.' 'CM←(1-(1,'' ''∧.=CM)⊥1)↓[2]CM' '1=⎕IO' 2 'Remove trailing blank rows.' 'CM←(1-(1,CM∧.='' '')⊥1)↓[0]CM' '0=⎕IO' 2 'Remove trailing blank rows.' 'CM←(1-(1,CM∧.='' '')⊥1)↓[1]CM' '1=⎕IO' 2 'Remove trailing blanks.' 'V←(⌽∨\⌽C≠'' '')/C' '' 2 'Removing blank columns.' '('' ''∨.≠CM)/CM' '' 0 'Removing blank rows.' '(CM∨.≠'' '')⌿CM' '' 0 'Removing blanks.' '('' ''≠XV)/XV' '' 0 'Removing columns IV from array XA.' '(~(⍳¯1↑⍴XA)∊IV)/XA' '' 0 'Removing duplicate blank columns.' '(A∨1,¯1↓A←'' ''∨.≠CM)/CM' '' 0 'Removing duplicate blank rows.' '(A∨1↓1⌽1,A←CM∨.≠'' '')⌿CM' '' 0 'Removing duplicate elements (nub).' '((XV⍳XV)=⍳⍴XV)/XV' '' 0 'Removing duplicate elements (nub).' '(1 1⍉<\XV∘.=XV)/XV' '' 0 'Removing duplicate rows.' '((A⍳A)=⍳⍴A←2⊥XM^.=⍉XM)⌿XM' '' 0 'Removing duplicate rows.' '((A⍳A)=⍳⍴A←⎕IO++⌿^⍀XM∨.≠⍉XM)⌿XM' '' 0 'Removing duplicate rows.' '(∨⌿<\XM^.=⍉XM)⌿XM' '' 0 'Removing duplicate rows.' '(1 1⍉<\XM^.=⍉XM)⌿XM' '' 0 'Removing duplicate rows from ordered matrix XM.' '(¯1⌽1↓(∨/XM≠¯1⊖XM),1)⌿XM' '' 0 'Removing duplicate XS''s from vector XV.' '(A∨¯1↓1,A←XV≠XS)/XV' '' 0 'Removing duplicates from an ordered vector.' '(¯1⌽1↓(XV≠¯1⌽XV),1)/XV' '' 0 'Removing duplicates from positive integers.' 'A←9999⍴0 ⋄ A[IV]←1 ⋄ A/⍳9999' '' 0 'Removing elements XA from beginning and end of vector XV.' '((A⍳1)-⎕IO)↓(⎕IO-(⌽A←~XV∊XA)⍳1)↓XV' '' 0 'Removing elements XA from beginning of vector XV.' '(((~XV∊XA)⍳1)-⎕IO)↓XV' '' 0 'Removing elements XA from end of vector XV.' '(⎕IO-(~⌽XV∊XA)⍳1)↓XV' '' 0 'Removing elements XS from vector XV.' '(XV≠XS)/XV' '' 0 'Removing every IS:th element of XV.' '(0≠IS|⍳⍴XV)/XV' '' 0 'Removing every second element of XV.' '(2|⍳⍴XV)/XV' '' 0 'Removing leading and multiple blanks.' '(A∨¯1↓0,A←'' ''≠CV)/CV' '' 0 'Removing leading and trailing blanks.' '((⌽∨\⌽A)^∨\A←'' ''≠CV)/CV' '' 0 'Removing leading blank columns.' '(∨\'' ''∨.≠CM)/CM' '' 0 'Removing leading blank rows.' '(∨\CM∨.≠'' '')⌿CM' '' 0 'Removing leading blanks.' '(∨\'' ''≠CV)/CV' '' 0 'Removing leading blanks.' '(+/^\'' ''=CV)↓CV' '' 0 'Removing leading zeroes.' '(¯1+(XV=''0'')⍳0)↓XV' '' 0 'Removing leading, multiple and trailing blanks.' '('' ''=1↑CV)↓((1↓A,0)∨A←'' ''≠CV)/CV' '' 0 'Removing leading, multiple and trailing XS''s.' '(1↑A)↓(A⍲1⌽A←XS=XV)/XV' '' 0 'Removing multiple and trailing blanks.' '((1↓A,0)∨A←'' ''≠CV)/CV' '' 0 'Removing multiple blanks.' '(A∨¯1↓1,A←'' ''≠CV)/CV' '' 0 'Removing punctuation characters.' '(~XV∊'' .,:;?'''''')/XV' '' 0 'Removing trailing blank columns.' '(⌽∨\⌽'' ''∨.≠CM)/CM' '' 0 'Removing trailing blank columns.' '(⌽∨\⌽∨⌿'' ''≠CM)/CM' '' 0 'Removing trailing blank rows.' '(-2↑+/^\⌽CM^.='' '')↓CM' '' 0 'Removing trailing blanks.' '(1-('' ''=CV)⊥1)↓CV' '' 0 'Removing trailing blanks.' '(1-(⌽'' ''≠CV)⍳1)↓CV' '' 0 'Removing trailing blanks.' '(⌽∨\⌽'' ''≠CV)/CV' '' 0 'Removing trailing blanks.' '(-+/^\⌽'' ''=CV)↓CV' '' 0 'Removing trailing blanks.' '(¯1↑('' ''≠CV)/⍳⍴CV)⍴CV' '' 0 'Repeat matrix.' '(((¯1⌽~A)^A←(¯1↓XV1=1⌽XV1),0)/XV2)∘.=XV2' '' 0 'Replace all blanks with dashes.' '((,CA='' '')/,CA)←''-''' '' 2 'Replace all items, shape unchanged.' '(,A)←⊂AX' '' 2 'Replace all occurrences of element in array.' '((,CA∊1↓C)/,CA)←↑C' '' 2 'Replace leading zeros with blanks.' '((1=⌈\'' 0''⍳C)/C)←'' ''' '0=⎕IO' 2 'Replace leading zeros with blanks.' '((2=⌈\'' 0''⍳C)/C)←'' ''' '1=⎕IO' 2 'Replace rows of M given boolean start vector.' 'M←M[⌈\B×⍳⍴B;]' '' 2 'Replace selected items, shape unchanged.' '(B/,A)←(+/B)⍴V' '' 2 'Replacing all values XS1 in XA with XS2.' 'A[(A=XS1)/⍳⍴A←,XA]←XS2 ⋄ (⍴XA)⍴A' '' 0 'Replacing elements of XA in set XV1 with corresponding XV2.' 'A[B/⍳⍴B]←XV2[(B←B≤⍴XV2)/B←XV1⍳A←,XA] ⋄ (⍴XA)⍴A' '' 0 'Replacing elements of XA not satisfying BV with blanks/zeroes.' 'BV\BV/XA' '' 0 'Replacing elements of XS in set XV with blanks/zeroes.' 'A\(A←~XS∊XV)/XS' '' 0 'Replacing elements of XV not in set XA with blanks/zeroes.' 'A\(A←XV∊XA)/XV' '' 0 'Replacing elements of XV satisfying BV with XS.' 'XV[BV/⍳⍴XV]←XS' '' 0 'Replacing first element of XV with XS.' '¯1⌽1↓XV,XS' '' 0 'Replacing last element of XV with XS.' '1⌽¯1↓XS,XV' '' 0 'Replacing zeroes with corresponding elements of NA2.' 'NA1+NA2×NA1=0' '' 0 'Replicate CM at rows indicated by B.' 'CM←(1+B)⌿CM' '' 2 'Replicate MU given boolean start vector.' 'M←MU[¯1++\B;]' '0=⎕IO' 2 'Replicate MU given boolean start vector.' 'M←MU[+\B;]' '1=⎕IO' 2 'Replicate XV[i] IV[i] times (for all i).' '((IV≠0)/XV)[+\¯1⌽(⍳+/IV)∊+\IV]' '' 0 'Replicate XV[i] IV[i] times (for all i).' 'XV[+\(⍳+/IV)∊¯1↓1++\0,IV]' '' 0 'Replicate XV[i] IV[i] times (for all i).' 'XV[⎕IO++\(⍳+/IV)∊⎕IO++\IV]' '' 0 'Replicating a dimension of rank three array XQ IS-fold.' 'XQ[;,(IS⍴1)∘.×⍳(⍴XQ)[2];]' '' 0 'Representation of current date (American).' 'A←⍕100|1⌽3↑⎕TS ⋄ A[('' ''=A)/⍳⍴A]←''/'' ⋄ A' '' 0 'Representation of current date (ascending format).' 'A←⍕⌽3↑⎕TS ⋄ A[('' ''=A)/⍳⍴A]←''.'' ⋄ A' '' 0 'Representation of current date (descending format).' 'A←⍕1000⊥3↑⎕TS ⋄ A[5 8]←''-'' ⋄ A' '' 0 'Representation of current time (12 hour clock).' '(1⌽,'' ::'',3 2⍴6 0⍕100⊥12 0 0|3↑3↓⎕TS),''AP''[1+12≤⎕TS[4]],''M''' '' 0 'Representation of current time (24 hour clock).' 'A←⍕1000⊥3↑3↓⎕TS ⋄ A[3 6]←'':'' ⋄ A' '' 0 'Representation of NS1 in base NS2.' '((1+⌊NS2⍟NS1)⍴NS2)⊤NS1' '' 0 'Reshaping a 400×12 character matrix to fit into one page.' '40 120⍴2 1 3⍉10 40 12⍴CM' '' 0 'Reshaping first element of XA into a scalar.' '⍬⍴XA' '' 0 'Reshaping NA into a matrix of width IS.' '((⌈(⍴,NA)÷IS),IS)⍴NA' '' 0 'Reshaping NA into a matrix of width IS.' '(((⍴,NA),1)×IS*¯1 1)⍴NA' '' 0 'Reshaping non-empty lower-rank array XA into a matrix.' '(1⌈¯2↑⍴XA)⍴XA' '2≥⍴⍴XA' 0 'Reshaping non-empty lower-rank array XA into a matrix.' '(¯2↑1 1,⍴XA)⍴XA' '2≥⍴⍴XA' 0 'Reshaping numeric vector NV into a one-column matrix.' 'NV∘.+,0' '' 0 'Reshaping one-element vector XV into a scalar.' '+/XV' '' 0 'Reshaping only one-element numeric vector NV into a scalar.' '⍎⍕NV' '' 0 'Reshaping planes of rank 3 array to a matrix.' '(×/2 2⍴(⍴XQ),1)⍴XQ' '' 0 'Reshaping planes of rank 3 array to rows of a matrix.' '(×/2 2⍴1,⍴XQ)⍴XQ' '' 0 'Reshaping scalar XA into a one-element vector.' '1/XA' '' 0 'Reshaping vector XV into a one-column matrix.' '(⌽1,⍴XV)⍴XV' '' 0 'Reshaping vector XV into a one-column matrix.' '((⍴XV),1)⍴XV' '' 0 'Reshaping vector XV into a one-row matrix.' '(1,⍴XV)⍴XV' '' 0 'Reshaping vector XV into a two-column matrix.' '((0.5×⍴XV),2)⍴XV' '' 0 'Residue replacing 0 with NS.' 'NA←NS+(-NS)|NA' '' 2 'Resistance of parallel resistors.' '÷+/÷NV' '' 0 'Restoring argument of cumulative sum (inverse of +\).' 'NV-¯1↓0,NV' '' 0 'Retrieving scattered elements IM from matrix XM.' '1 1⍉XM[IM[1;];IM[2;]]' '' 0 'RETURN. Leave function, return to caller.' '→0' '' 2 'Reversal (⌽) of subvectors of NV having lengths IV.' 'NV[⌽⍒+\(⍳⍴NV)∊+\⎕IO,IV]' '' 0 'Reversal (⌽) of subvectors of XV indicated by BV.' 'XV[⌽⍒+\BV]' '' 0 'Reverse vector XV on condition BS.' 'XV[⍒BS!⍳⍴XV]' '' 0 'Reverse vector XV on condition BS.' ',⌽[⎕IO+BS](1,⍴XV)⍴XV' '' 0 'Reversing disclose.' 'VV←(+/∨\⌽M≠'' '')↑¨⊂[1]M' '0=⎕IO' 2 'Reversing disclose.' 'VV←(+/∨\⌽M≠'' '')↑¨⊂[2]M' '1=⎕IO' 2 'Reversing disclose. Eliminating blanks.' 'V←(⊂[1]M)~¨'' ''' '0=⎕IO' 2 'Reversing disclose. Eliminating blanks.' 'V←(⊂[2]M)~¨'' ''' '1=⎕IO' 2 'Right justify C in field width NS.' 'C←NS↑C' '' 2 'Right justify matrix CM.' 'CM←(1-(1,CM='' '')⊥1)⌽CM' '' 2 'Rightmost neighboring elements.' '((-⍴⍴NA)↑1)↓NA,0' '' 0 'Rightmost neighboring elements cyclically.' '1⌽XA' '' 0 'Roman numerals to Arabic.' 'I←+/I×¯1*I<1⌽I←0,(,(10*⍳4)∘.×1 5)[''IVXLCDM''⍳C]' '0=⎕IO' 2 'Roman numerals to Arabic.' 'I←+/I×¯1*I<1⌽I←0,(,(1,10*⍳3)∘.×1 5)[''IVXLCDM''⍳C]' '1=⎕IO' 2 'Rotate & scale at same time.' 'ZA←ZA×2.1D30' '' 2 'Rotate figure 30 degrees.' 'ZA←ZA×1D30' '' 2 'Rotate figure in direction of point ZS.' 'ZA←ZA××ZS' '' 2 'Rotate first elements (1⌽) of subvectors of XV indicated by BV.' 'XV[⍋BV++\BV]' '' 0 'Rotation matrix for angle NS (in radians) counter-clockwise.' '2 2⍴1 ¯1 1 1×2 1 1 2○NS' '' 0 'Round to nearest integer.' '⌊0.5+NA' '' 1 'Rounding currencies to nearest 5 subunits.' '.05×⌊.5+NA÷.05' '' 0 'Rounding to ⎕PP precision.' '⍎⍕NV' '' 0 'Rounding to IA decimals.' '(10*-IA)×⌊0.5+NA×10*IA' '' 0 'Rounding to IS decimal places.' 'FA←⍎(|IS)⍕NA' '' 2 'Rounding to nearest even integer.' '⌊NA+1≤2|NA' '' 0 'Rounding to nearest even number.' 'IA←(×NA)×⌊(1≤2||NA)+|NA' '' 2 'Rounding to nearest hundredth.' '0.01×⌊0.5+100×NA' '' 0 'Rounding to nearest integer.' '⌊0.5+NA' '' 0 'Rounding to nearest NSth.' 'FA←(×NA)×(⌊.5+|NA÷NS)×NS' '' 2 'Rounding to nearest whole number.' 'IA←(×NA)×⌊.5+|NA' '' 2 'Rounding to zero values of NA1 close to zero.' 'NA1×NA2≤|NA1' '' 0 'Rounding, to nearest even integer for .5 = 1||NA.' '⌊NA+.5×.5≠2|NA' '' 0 'Row averages of NM.' 'RAVE←(+/NM)÷1⌈⊃⌽⍴NM' '' 2 'Row averages of NM. (non-zero).' 'RAVG←(+/NM)÷1⌈+/0≠NM' '' 2 'Row positions given boolean vector B.' 'P←B/⍳≢A' '' 2 'Row positions of MX in MY (0 for not found).' 'P←(<\MX∧.=⍉MY)+.×⍳↑⍴MY' '' 2 'Row positions of MX in MY.' 'P←(⊂[1]MY)⍳⊂[1]MX' '0=⎕IO' 2 'Row positions of MX in MY.' 'P←(⊂[2]MY)⍳⊂[2]MX' '1=⎕IO' 2 'Row standard deviation of A.' 'STD←(((N×+/A*2)-(+/A)*2)÷N×1⌈¯1+N←1⌈⊃⌽⍴A)*.5' '' 2 'Row sum of a matrix.' '+/NM' '' 0 'Row table. Vectors to rows of a matrix.' 'M←↑VV' '' 2 'Row theoretical standard deviation of A.' 'STD←(((N×+/A*2)-(+/A)*2)*.5)÷N←1⌈⊃⌽⍴A' '' 2 'Row theoretical variance of A.' 'VAR←((N×+/A*2)-(+/A)*2)÷(N←1⌈⊃⌽⍴A)*2' '' 2 'Row variance of A.' 'VAR←((N×+/A*2)-(+/A)*2)÷N×1⌈¯1+N←1⌈⊃⌽⍴A' '' 2 'Row-by-row formatting (width IS) of NM with IV decimals per row.' '((1,IS)×⍴NM)⍴2 1 3⍉(⌽IS,⍴NM)⍴(,IS,[1.1]IV)⍕⍉NM' '' 0 'Rows of matrix XM starting with string XV.' '((((≢XM),⍴XV)↑XM)^.=XV)⌿XM' '' 0 'Rows of non-empty matrix XM starting with a character in XV.' '(XM[;1]∊XV)⌿XM' '' 0 'Row-wise percentage per row.' 'N←100×NM÷[0]+/NM' '0=⎕IO' 2 'Row-wise percentage per row.' 'N←100×NM÷[1]+/NM' '1=⎕IO' 2 'Running parity.' '≠\BA' '' 0 'Running parity (≠\) over subvectors of BV2 indicated by BV1.' '≠\BV2≠BV1\A≠¯1↓0,A←BV1/≠\¯1↓0,BV2' '' 0 'Running sum of IS consecutive elements of NV.' '((IS-1)↓A)-0,(-IS)↓A←+\NV' '' 0 'Running sum of NS consecutive elements of N.' 'N←NS+/N' '' 2 'Scalar (dot) product of vectors.' 'NV2+.×NV1' '' 0 'Scan from end with function ⍺.' '⌽⍺\⌽XA' '' 0 'Scatter assignment.' '(,A)[(⍴A)⊥⍉PM]←V' '0=⎕IO ⋄ (⍴PM)=(⍴V),⍴⍴A' 2 'Scatter assignment.' '(,A)[1+(⍴A)⊥⍉¯1+PM]←V' '1=⎕IO ⋄ (⍴PM)=(⍴V),⍴⍴A' 2 'Scatter assignment.' '(PV⌷¨⊂A)←V' '(⍴PV)=⍴V ⋄ (⍴¨PV)=⍴⍴A' 2 'Scatter indexing.' 'V←PV⌷¨⊂A' '(⍴PV)=⍴V ⋄ (⍴¨PV)=⍴⍴A' 2 'Select random item from vector. Works on ''''.' 'NS←V[(0≠⍴V)?⍴V]' '' 2 'Select X or Y depending on BS.' 'Z←BS⊃X Y' '0=⎕IO' 2 'Select X or Y depending on BS.' 'Z←(BS+1)⊃X Y' '1=⎕IO' 2 'Select X or Y depending on BS.' 'Z←⊃BS↓X Y' '' 2 'Selecting elements of XA satisfying condition BV.' 'BV/XA' '' 0 'Selecting elements satisfying condition BA, others to 1.' 'BA!NA' '' 0 'Selecting elements satisfying condition BA, others to one.' 'NA*BA' '' 0 'Selecting elements satisfying condition BA, zeroing others.' 'BA×NA' '' 0 'Selecting specific elements from a ''large'' outer product.' 'IV⍉XA1∘.⍺XA2' '' 0 'Selection depending on index origin.' 'XV[2×⎕IO]' '' 0 'Selection depending on index origin.' 'XV[1]' '' 0 'Selection depending on sign of array.' 'A←(⊂¯1 0 1⍳×NA)⌷SW SX SY' '' 2 'Selection depending on sign of scalar.' 'S←(¯1 0 1⍳×NS)⊃SW SX SY' '' 2 'Selection of elements of NA1 and NA2 depending on condition BA.' '(NA1×BA)+NA2×~BA' '' 0 'Selection of XS1 or XS2 depending on condition BS.' '''''⍴BS↓XS1,XS2' '' 0 'Selection of XS1 or XS2 depending on condition BS.' '(XS1,XS2)[⎕IO+BS]' '' 0 'Selective multiple subarrays from array.' 'AV←PAV⊃¨¨⊂⊂A' '' 2 'Sentence from vector of words.' 'C←∊'' '',¨VV' '' 2 'Sentence to vector of words.' ('VV←⍎∊'''''''',C,''''''''',(⎕ucs 8867),'((C='' '')/C)←⊂'''''' ''''''') '' 2 'Sentence to vector of words.' 'VV←((2>/1,B)/⍳⍴B)↓¨(1+(2</B,1)/⍳⍴B←C='' '')↑¨⊂C' '0=⎕IO' 2 'Sentence to vector of words.' 'VV←(¯1+(2>/1,B)/⍳⍴B)↓¨((2</B,1)/⍳⍴B←C='' '')↑¨⊂C' '1=⎕IO' 2 'Sentence to vector of words.' ('VV←(C≠'' '')',(⎕ucs 8838 67)) '' 2 'Separating a date YYMMDD to YY, MM, DD.' '⍉(3⍴100)⊤NA' '' 0 'Separating date IS - YYYYMMDD format.' '(IW IX IY)←0 100 100⊤IS' '' 2 'Separating variable length lines.' 'XV1,⎕TC[2],XV2' '' 0 'Sequence from NX for IX items.' 'N←∊NX+⍳¨IX' '0=⎕IO' 2 'Sequence from NX for IX items.' 'N←¯1+∊NX+⍳¨IX' '1=⎕IO' 2 'Setting a constant with hyphens.' '⎕LX←⍞' '' 0 'Shift B forward or backward IS positions.' 'B←((×IS)×⍴B)↑IS↓B' '' 2 'Shifting vector XV left with IS without rotate.' '(⍴XV)↑IS↓XV' '' 0 'Shifting vector XV right with IS without rotate.' '(-⍴XV)↑(-IS)↓XV' '' 0 'Shur product.' '1 2 1 2⍉NM1∘.×NM2' '' 0 'Sign of point ZS relative to edges of Z.' 'V←×11○(ZS-1↓Z)×+2-/Z' '' 2 'SIGN. Transfer of sign from NAY to NAX.' 'NA←(×NAY)×|NAX' '' 2 'Sine of a complex number.' '(2 2⍴1 6 2 5)×.○NA' '≢NA ←→ 2' 0 'Sine of NA in radians.' 'FA←1○NA' '' 2 'Size of range of elements of NV.' '(⌈/NV)-⌊/NV' '' 0 'Skew by 30 percent in y.' 'ZA←ZA+¯11○.3×9○ZA' '' 2 'Smallest possible number.' 'FS←⌈/⍬' '' 2 'Sort by highfliers - M ←→ groups of length L.' 'M←M[⍒L/L;]' '' 2 'Sort each column in ascending order.' '(,⍉A)←(,A)[⍋,A+(⍴A)⍴(⌈/,A)×⍳×/¯1↓⍴A]' '' 2 'Sort each column in ascending order.' 'A←↑[I](⊂¨⍋¨A)⌷¨A←⊂[I←¯2+⍴⍴A]A' '1=⎕IO ⋄ 2≤⍴⍴A' 2 'Sort each column in ascending order.' 'A←↑[I](⊂¨⍋¨A)⌷¨A←⊂[I←¯1+⍴⍴A]A' '0=⎕IO ⋄ 2≤⍴⍴A' 2 'Sort each row in ascending order.' '(,A)←(,A)[⍋,A+(⊃⌽⍴A)/(⌈/,A)×⍳×/¯1↓⍴A]' '' 2 'Sort each row in ascending order.' 'A←↑(⊂¨⍋¨A)⌷¨A←⊂[¯1+⍴⍴A]A←1/A' '1=⎕IO' 2 'Sort each row in ascending order.' 'A←↑(⊂¨⍋¨A)⌷¨A←⊂[⍴⍴A]A←1/A' '0=⎕IO' 2 'Sorting a matrix according to Y:th column.' 'NM[⍋NM[;Y];]' '' 0 'Sorting a matrix into lexicographic order.' 'NM[⍋+⌿A<.-⍉A←NM,0;]' '' 0 'Sorting a matrix into reverse lexicographic order.' 'NM[⍒+⌿A<.-⍉A←NM,0;]' '' 0 'Sorting CM in ascending row order.' 'CM←CM[⍋⎕UCS CM;]' '' 2 'Sorting CM in descending row order.' 'CM←CM[⍒⎕UCS CM;]' '' 2 'Sorting CM in reverse SEQ order.' 'CM←CM[SEQ⍒CM;]' '' 2 'Sorting CM in SEQ row order.' 'CM←CM[SEQ⍋CM;]' '' 2 'Sorting CVV in alphabetical order.' 'CVV←CVV[⍋⎕UCS↑CVV]' '' 2 'Sorting indices IV according to data NV.' 'IV[⍋NV[IV]]' '' 0 'Sorting NM in ascending row order.' 'NM←NM[⍋NM;]' '' 2 'Sorting NM in descending row order.' 'NM←NM[⍒NM;]' '' 2 'Sorting NV into ascending order.' 'NV[⍋NV]' '' 0 'Sorting NV into descending order.' 'NV[⍒NV]' '' 0 'Sorting rows of matrix NM into ascending order.' '(⍴NM)⍴(,NM)[A[⍋(,⍉(⌽⍴NM)⍴⍳≢NM)[A←⍋,NM]]]' '' 0 'Sorting rows of matrix NM into ascending order.' 'A←(⍋,NM)-⎕IO ⋄ (⍴NM)⍴(,NM)[⎕IO+A[⍋⌊A÷¯1↑⍴NM]]' '' 0 'Sorting rows of XM according to key XV (alphabetizing).' 'XM[⍋(1+⍴XV)⊥XV⍳⍉XM;]' '' 0 'Sorting words in list CM according to word length.' 'CM[⍋CM+.≠'' '';]' '' 0 'Sorting XV2 according to XV1.' 'XV2[⍋XV1]' '' 0 'Spacing out text.' '((2×⍴CV)⍴1 0)\CV' '' 0 'Spacing out text.' ',CV,[1.1]'' ''' '' 0 'Split A into a vector of arrays given B.' ('VA←↑[1↓⍳⍴⍴A]¨(+\B)',(⎕ucs 8838),'⊂[1↓⍳⍴⍴A]A') '' 2 'Split complex array into real & imaginary.' 'NA←9 11∘.○ZA' '' 2 'Split V into subvectors given boolean B.' 'VV←(+\B)⊂V' '' 2 'Split V into subvectors indicated by L.' ('VV←(L/⍳⍴L)',(⎕ucs 8838 86)) '' 2 'Splitting a variable into a set of variables.' '(N B I F Z)←VV' '' 2 'Square of elements of NA without change of sign.' 'NA×|NA' '' 0 'Square without changing sign.' 'NA←NA×|NA' '' 2 'Standard deviation of NV.' '((+/(NV-(+/NV)÷⍴NV)*2)÷⍴NV)*.5' '' 0 'Starting points for IS1 fields of width IS2.' '(IS1×IS2)⍴IS2↑1' '' 0 'Starting points for XV in indices pointed by IV.' '(⍳⍴XV)∊IV' '' 0 'Starting points of groups of equal elements (non-empty XV).' '1,(1↓XV)≠¯1↓XV' '' 0 'Starting positions of subvectors having lengths IV.' '#NAME?' '' 0 'State of switch given BX=on & BY=off spikes.' 'B←≠\B\2≠/0,(B←BX∨BY)/BX' '' 2 'Stereo pair. (Eye separation NS).' 'VZ←(¯.5 .5×NS)+⊂Z' '' 2 'Students grades given score IA.' 'CA←''FDCBA''[+/IA∘.≥10×6 7 8 9]' '0=⎕IO' 2 'Students grades given score IA.' 'CA←''FDCBA''[+/IA∘.≥10×0 6 7 8 9]' '1=⎕IO' 2 'Successive transposes of XA (IV1 after IV2: IV1⍉IV2⍉XA).' 'IV1[IV2]⍉XA' '' 0 'Sum by bucket. U = buckets.' 'N←N+.×V∘.≡U' '⍴N ←→ ⍴V' 2 'Sum elements of NV1 marked by succeeding identicals in NV2.' 'A-¯1↓0,A←(NV2≠1↓NV2,0)/+\NV1' '' 0 'Sum of all elements in NA.' 'NS←+/∊NA' '' 2 'Sum of alternating reciprocal series NV2÷NV1.' 'NV2-.÷NV1' '' 0 'Sum of common parts of matrices (matrix sum).' '1 2 1 2⍉NM1∘.+NM2' '' 0 'Sum of elements of NV.' '+/NV' '' 0 'Sum of magnitude of N.' 'NS←+/|N' '' 2 'Sum of N.' 'NS←+/N' '' 2 'Sum of numbers in character matrix XM.' '⍎,''+'',XM' '' 0 'Sum of reciprocal series NV2÷NV1.' 'NV2+.÷NV1' '' 0 'Sum of squares of NV.' 'NV+.*2' '' 0 'Sum of squares of NV.' 'NV+.×NV' '' 0 'Sum of subvectors of V given boolean B.' ('N←+/¨(+\B)',(⎕ucs 8838 86)) '' 2 'Sum of subvectors of V indicated by L.' ('N←+/¨(L/⍳⍴L)',(⎕ucs 8838 86)) '' 2 'Sum of the elements of vector NV.' '1⊥NV' '' 0 'Sum over elements of NV1 determined by elements of NV2.' 'NV1+.×NV2∘.=((⍳⍴NV2)=NV2⍳NV2)/NV2' '' 0 'Summation over subsets of XV specified by BA.' 'XV+.×BA' '' 0 'Sums according to codes XA2.' '(XA2∘.=XA1)+.×NA' '' 0 'Sums over (+/) subvectors of NV indicated by BV.' 'A-¯1↓0,A←(1⌽BV)/+\NV' '' 0 'Sums over (+/) subvectors of NV, lengths in IV.' 'A-¯1↓0,A←(+\NV)[+\IV]' '' 0 'Swap real & imaginary.' 'ZA←¯11○+ZA' '' 2 'SWIFT check digit from IS bank number.' 'IS←97+¯97|IS' '' 2 'Syllabization of a Finnish word XV.' '(~A∊1,⍴XV)/A←A/⍳⍴A←(1↓A,0)←~XV∊''aeiouyäö''' '' 0 'Syntax error to stop execution.' (,'∘') '' 0 'Table of divisibility.' 'M←0=(1+⍳⌈/I)∘.|I' '0=⎕IO' 2 'Table of divisibility.' 'M←0=(⍳⌈/I)∘.|I' '1=⎕IO' 2 'Take of at most IA elements from XA.' '(IA⌊⍴XA)↑XA' '' 0 'Taking every IS:th element of XV.' '(0=IS|⍳⍴XV)/XV' '' 0 'Tangent of NA in radians.' 'FA←3○NA' '' 2 'Taylor series at point X, coefficients Y.' 'N←+/Y×(X*N)÷!N←⍳⍴Y' '0=⎕IO' 2 'Taylor series at point X, coefficients Y.' 'N←+/Y×(X*N)÷!N←¯1+⍳⍴Y' '1=⎕IO' 2 'Temporary ravel of XA1 for indexing with IA.' 'A←⍴XA1 ⋄ XA1←,XA1 ⋄ XA1[IA]←XA2 ⋄ XA1←A⍴XA1' '' 0 'Temporary ravel of XA1 for indexing with IA.' 'A←,XA1 ⋄ A[IA]←XA2 ⋄ XA1←(⍴XA1)⍴A' '' 0 'Test for antisymmetricity of square matrix NM.' '~0∊NM=-⍉NM' '' 0 'Test for associativity of f1 and f2.' 'BS←((V f1 X)f2 Y)≡V f1 X f2 Y' '' 2 'Test for commutativity of fn.' 'BS←⊃≡/X Y fn Y X' '' 2 'Test for distributivity of f1 and f2.' 'BS←((V f1 X)f2 Y)≡⊃f1/V X f2⊂Y' '' 2 'Test for symmetricity of matrix XM.' '⍎⍎''1'',''↑↓''[⎕IO+^/(⍴XM)=⌽⍴XM],''''''0~0∊XM=⍉XM''''''' '' 0 'Test for symmetricity of matrix XM.' '⍎(¯7*A^.=⌽A←⍴XM)↑''0~0∊XM=⍉XM''' '' 0 'Test for symmetricity of square matrix XM.' '~0∊XM=⍉XM' '' 0 'Test if all elements of vector BV are equal.' '∨/^/0 1∘.=BV' '' 0 'Test if all elements of vector BV are equal.' 'BV^.=∨/BV' '' 0 'Test if all elements of vector BV are equal.' 'BV^.=^/BV' '' 0 'Test if all elements of vector BV are equal.' '⍲/0 1∊BV' '' 0 'Test if all elements of vector BV are equal.' '(^/BV)∨~∨/BV' '' 0 'Test if all elements of vector BV are equal.' '(^/BV)=∨/BV' '' 0 'Test if all elements of vector BV are equal.' '^/BV÷∨/BV' '' 0 'Test if all elements of vector BV are equal.' '≠/0 1∊BV' '' 0 'Test if all elements of vector BV are equal.' '^/BV/1⌽BV' '' 0 'Test if all elements of vector BV are equal.' '~^/BV∊~BV' '' 0 'Test if all elements of vector BV are equal.' '0=(⍴BV)|+/BV' '' 0 'Test if all elements of vector NV are equal.' '(⌈/NV)=⌊/NV' '' 0 'Test if all elements of vector XV are equal.' '^/⎕IO=XV⍳XV' '' 0 'Test if all elements of vector XV are equal.' '^/XV=1⌽XV' '' 0 'Test if all elements of vector XV are equal.' '^/XV=1↑XV' '' 0 'Test if all elements of vector XV are equal.' '^/XV=XV[1]' '' 0 'Test if arrays are identical.' '~0∊XA1=XA2' '' 0 'Test if arrays of equal shape are identical.' '^/,XA1=XA2' '⍴XA1 ←→ ⍴XA2' 0 'Test if circular lists are equal (excluding phase).' '∨/XV2^.=⍉(⍳⍴XV1)⌽(2⍴⍴XV1)⍴XV1' '' 0 'Test if CV is a valid APL name.' '¯1≠⎕NC CV' '' 0 'Test if each element of XV occurs only once.' '^/(XV⍳XV)=⍳⍴XV' '' 0 'Test if elements differ from next ones (non-empty XV).' '(¯1↓XV≠1⌽XV),1' '' 0 'Test if elements differ from previous ones (non-empty XV).' '1,1↓XV≠¯1⌽XV' '' 0 'Test if elements of XM1 belong to corr. row of XM2 (XM1[i;]∊XM2[i;]).' '∨/1 2 1 3⍉XM1∘.=XM2' '≢XM1 ←→ ≢XM2' 0 'Test if even.' '~2|IA' '' 0 'Test if IA is a leap year.' '(0=400|IA)∨(0≠100|IA)^0=4|IA' '' 0 'Test if integer.' 'NA=⌊NA' '' 0 'Test if IS1 is an integer within range [ IS2,IS3 ).' '~IS1≤.≥(⌈IS1),IS2,IS3' '' 0 'Test if IV is a permutation vector.' 'IV^.=⍋⍋IV' '' 0 'Test if IV is a permutation vector.' 'IV[⍋IV]^.=⍳⍴IV' '' 0 'Test if IV is a permutation vector.' '^/1=+⌿IV∘.=⍳⍴IV' '' 0 'Test if IV is a permutation vector.' '^/(⍳⍴IV)∊IV' '' 0 'Test if NA is in ascending order along direction IS.' '^/[IS]NA=⌈\[IS]NA' '' 0 'Test if NA is in descending order along direction IS.' '^/[IS]NA=⌊\[IS]NA' '' 0 'Test if NA is within range ( NM[1;],NM[2;] ].' 'NA<.≤NM' '≢NQ ←→ 2' 0 'Test if NA is within range ( NM[1;],NM[2;] ].' '(NA,[.1+⍴⍴NA]NA)>.>NM' '≢NQ ←→ 2' 0 'Test if NA is within range ( NV[1],NV[2] ).' '(NV[1]<NA)^NA<NV[2]' '' 0 'Test if NA is within range [ NV[1],NV[2] ).' '≠/NA∘.≥NV' '' 0 'Test if NA is within range [ NV[1],NV[2] ].' '(NV[1]≤NA)^(NA≤NV[2])' '2=⍴NQ' 0 'Test if NM is a lower triangular matrix.' '^/,(0≠NM)≤A∘.≥A←⍳≢NM' '' 0 'Test if NM is an upper triangular matrix.' '^/,(0≠NM)≤A∘.≤A←⍳≢NM' '' 0 'Test if NS is within range ( NM[1;],NM[2;] ].' 'NS<.≤NM' '≢NQ ←→ 2' 0 'Test if NS is within range [ NM[1;],NM[2;] ).' 'NS<.<NM' '≢NQ ←→ 2' 0 'Test if numeric.' '0∊0\0⍴XV' '' 0 'Test if numeric.' '0∊1↑0⍴XA' '' 0 'Test if numeric and conversion to numeric form.' '1↓⍎''0 '',(^/CV∊'' '',⎕D)/CV' '' 0 'Test if NV1 and NV2 are permutations of each other.' 'NV2[⍋NV2]^.=NV1[⍋NV1]' '' 0 'Test if rows of XA contain elements differing from XS.' 'XA∨.≠XS' '' 0 'Test if single or scalar.' '1∊⍴,XA' '' 0 'Test if the elements of NV are ascending.' 'NV<.≥1⌽NV' '' 0 'Test if vector.' '1∊⍴⍴XA' '' 0 'Test if vector XV is a row of array XA.' '1∊XA^.=XV' '' 0 'Test if XA and XV have elements in common.' '∨/XV∊XA' '' 0 'Test if XA is an empty array.' '0∊⍴XA' '' 0 'Test if XA is boolean.' '^/,XA∊0 1' '' 0 'Test if XV is a subset of XA (XV ⊂ XA).' '^/XV∊XA' '' 0 ('Test relations of elements of NA1 to range NA2; result in ¯2',(⎕ucs 8230 50 46)) '+/×NA1∘.-NA2' '2=¯1↑⍴NA2' 0 'Tests the social security number (Finnish).' '(¯1↑X)=((~Y∊''GIOQ'')/Y)[1+31|⍎9↑X]' '10=⍴X' 0 'Text (including quotes) in expression.' 'C←(B∨≠\B←C='''''''')/C' '' 2 'Text (with first quote) in expression.' 'C←(≠\C='''''''')/C' '' 2 'Text (without quotes) in expression.' ('VV←((~B)∧≠\B←C='''''''')',(⎕ucs 8838 67)) '' 2 'The average # of lines per pgm. in a WS.' 'IS←(+/⊃¨⍴¨⎕CR¨⊂[1]M)÷≢M←⎕NL 3 4' '0=⎕IO' 2 'The average # of lines per pgm. in a WS.' 'IS←(+/⊃¨⍴¨⎕CR¨⊂[2]M)÷≢M←⎕NL 3 4' '1=⎕IO' 2 'The enclose of the items of PV (which must be of depth 2) catenated along their first axes.' '⍪/PV' '' 1 'The enclose of the items of PV (which must be of depth 2) catenated along their last axes.' ',/PV' '' 1 'The Exponential. e to the NAth power.' 'FA←*NA' '' 2 'The first item in any rank array.' 'A←⊃A' '' 2 'The first sub-array along the first axis of XA.' ((⎕ucs 8867),'⌿XA ') '' 1 'The first sub-array along the last axis of XA.' ((⎕ucs 8867),'/XA ') '' 1 'The index of positive integers in IV.' 'A←9999⍴⎕IO+⍴IV ⋄ A[⌽IV]←⌽⍳⍴IV ⋄ A[IA]' '' 0 'The item in the bottom right of XA (⎕ML<2).' '⊃⌽,XA' '' 1 'The item in the bottom right of XA (⎕ML≥2).' '↑⌽,XA' '' 1 'The item in the top right of XA (⎕ML<2).' '⊃⌽XA' '' 1 'The item in the top right of XA (⎕ML≥2).' '↑⌽XA' '' 1 'The last item in any rank array.' 'A←⊃⌽,A' '' 2 'The last sub-array along the first axis of XA.' ((⎕ucs 8866),'⌿XA ') '' 1 'The last sub-array along the last axis of XA.' ((⎕ucs 8866),'/XA ') '' 1 'The length of the first axis of each item in XA (⎕ML<2).' '⊃∘⍴¨XA' '' 1 'The length of the first axis of each item in XA (⎕ML≥2).' '↑∘⍴¨XA' '' 1 'The natural logarithm of NA.' 'FA←⍟NA' '' 2 'The NAX based logarithm of NAY.' 'FA←NAX⍟NAY' '' 2 'The NAYth root of the items in NAX.' 'FA←NAX*÷NAY' '' 2 'The number of code lines in a workspace.' 'IS←+/⊃¨⍴¨⎕CR¨⊂[1]⎕NL 3 4' '0=⎕IO' 2 'The number of code lines in a workspace.' 'IS←+/⊃¨⍴¨⎕CR¨⊂[2]⎕NL 3 4' '1=⎕IO' 2 'The number of leading 1s in each row of BA.' '+/^\BA' '' 1 'The number of leading blank spaces in each row of CA.' '+/^\'' ''=CA' '' 1 'The number of objects in a workspace.' 'IS←≢⎕NL 2 3 4' '' 2 'The positions in BV corresponding to the 1s in XV.' 'XV/⍳⍴BV' '' 1 'The prototype of A.' 'A←⊃0⍴⊂⊃A' '' 2 'The rank of XA as a 1-element vector.' '⍴⍴XA' '' 1 'The rank of XA as a scalar.' '≢⍴XA' '' 1 'The subset of BV corresponding to the 1s in NS.' 'NS/⍳BV' '' 1 'The subset of XV in the index positions defined by NA (equivalent to XV[NA]).' 'NA⊃¨⊂XV' '' 1 'The type of A.' 'A←⊃0⍴⊂A' '' 2 'Three wise rolling average.' 'AVG3←(3+/NA)÷3' '' 2 'Total standard deviation of A.' 'STD←((+/(,A-(+/,A)÷1⌈⍴,A)*2)÷1⌈¯1+⍴,A)*.5' '' 2 'Total theoretical standard deviation of A.' 'STD←((+/(,A-(+/,A)÷N)*2)÷N←1⌈⍴,A)*.5' '' 2 'Total theoretical variance of A.' 'VAR←(+/(,A-(+/,A)÷N)*2)÷N←1⌈⍴,A' '' 2 'Total variance of A.' 'VAR←(+/(,A-(+/,A)÷1⌈⍴,A)*2)÷1⌈¯1+⍴,A' '' 2 'Transpose every submatrix of A.' 'A←(⍋(-⍴⍴A)↑1 0)⍉A' '' 2 'Transpose matrix XM on condition BS.' '(BS⌽1 2)⍉XM' '' 0 '''Transpose'' of matrix XM with column fields of width Y.' '((⌽A)×1,Y)⍴2 1 3⍉(1⌽Y,A←(⍴XM)÷1,Y)⍴XM' '' 0 'Transpose of planes of a rank three array.' '1 3 2⍉XQ' '' 0 'Truth table with IS variables.' 'M←2|⌊(⍳2*IS)∘.÷1+2*IS-⍳IS' '0=⎕IO' 2 'Truth table with IS variables.' 'M←2|⌊(¯1+⍳2*IS)∘.÷2*IS-⍳IS' '1=⎕IO' 2 'Truth table: All possibilities of and(∧).' 'CM←(''∧-'',B),[0]B,''|'',B∘.∧B←0 1' '0=⎕IO' 2 'Truth table: All possibilities of and(∧).' 'CM←(''∧-'',B),[1]B,''|'',B∘.∧B←0 1' '1=⎕IO' 2 'Truth table: All possibilities of nand(⍲).' 'CM←(''⍲-'',B),[0]B,''|'',B∘.⍲B←0 1' '0=⎕IO' 2 'Truth table: All possibilities of nand(⍲).' 'CM←(''⍲-'',B),[1]B,''|'',B∘.⍲B←0 1' '1=⎕IO' 2 'Truth table: All possibilities of nor(⍱).' 'CM←(''⍱-'',B),[0]B,''|'',B∘.⍱B←0 1' '0=⎕IO' 2 'Truth table: All possibilities of nor(⍱).' 'CM←(''⍱-'',B),[1]B,''|'',B∘.⍱B←0 1' '1=⎕IO' 2 'Truth table: All possibilities of or(∨).' 'CM←(''∨-'',B),[0]B,''|'',B∘.∨B←0 1' '0=⎕IO' 2 'Truth table: All possibilities of or(∨).' 'CM←(''∨-'',B),[1]B,''|'',B∘.∨B←0 1' '1=⎕IO' 2 'Two column matrix from one vector.' 'M←((⌈.5×⍴V),2)⍴V' '' 2 'Two column matrix from two vectors.' 'M←X,[.5]Y' '0=⎕IO' 2 'Two column matrix from two vectors.' 'M←X,[1.5]Y' '1=⎕IO' 2 'Two row matrix from two vectors.' 'M←X,[¯.5]Y' '0=⎕IO' 2 'Two row matrix from two vectors.' 'M←X,[.5]Y' '1=⎕IO' 2 'Type of simple A. 1-char, 2-num, 3-mixed.' 'IO←1+(0,⍴,A)⍳0+.=⊃¨0⍴¨,A' '0=⎕IO' 2 'Type of simple A. 1-char, 2-num, 3-mixed.' 'IO←(0,⍴,A)⍳0+.=⊃¨0⍴¨,A' '1=⎕IO' 2 'Underlines a string.' 'CM←C,[¯.5]''¯''' '0=⎕IO' 2 'Underlines a string.' 'CM←C,[.5]''¯''' '1=⎕IO' 2 'Underlines non-blanks in a string.' 'CM←C,(⎕UCS 10),(C≠'' '')\''¯''' '' 2 'Underlining a string.' 'CV,[⎕IO-.1]''¯''' '' 0 'Underlining words.' 'CV,[⎕IO-.1]('' ''≠CV)\''¯''' '' 0 'Union of sets, ?' 'XV2,(~XV1∊XV2)/XV1' '' 0 'Union of two sets of numbers.' 'V←Y,(~X∊Y)/X' '' 2 'Union of two sets of numbers.' 'V←Y,X~Y' '' 2 'Unique. Drop duplicates from list.' 'MU←(∨⌿<\M∧.=⍉M)⌿M' '' 2 'Unique. Drop duplicates from ordered list.' 'MU←(¯1↓1,∨/MG≠1⊖MG)⌿MG' '' 2 'Unique. Drop duplicates from ordered vector.' 'U←(¯1↓1,V≠1⌽V)/V' '' 2 'Unique. Drop duplicates from vector.' 'U←((V⍳V)=⍳⍴V)/V' '' 2 'Unique. Drop duplicates from vector.' 'U←(∨⌿<\V∘.=V)/V' '' 2 'Unit cube.' 'M←2 2 2⊤1+⍳8' '0=⎕IO' 2 'Unit cube.' 'M←2 2 2⊤⍳8' '1=⎕IO' 2 'Unit square.' 'M←2 2⊤1+⍳4' '0=⎕IO' 2 'Unit square.' 'M←2 2⊤⍳4' '1=⎕IO' 2 'Unit tesseract.' 'M←2 2 2 2⊤1+⍳16' '0=⎕IO' 2 'Unit tesseract.' 'M←2 2 2 2⊤⍳16' '1=⎕IO' 2 'Unpack a vector into an array based on BA.' '((,BA)/,A)←V' '' 2 'Using a variable named according to XS.' '⍎''VAR'',(⍕XS),''←XA''' '' 0 'Using boolean matrix BM in expanding XV.' '(⍴BM)⍴(,BM)\XV' '' 0 'Using default value 100 if XA does not exist.' '⍎(¯3*2≠⎕NC ''XA'')↑''XA100''' '' 0 'Value of fixed-degree polynomial NV at points NA.' 'NV[3]+NA×NV[2]+NA×NV[1]' '' 0 'Value of polynomial with coefficients NA at point NS.' 'NS⊥NA' '' 0 'Value of polynomial with coefficients NA at point NS.' '(NS*¯1+⍳⍴NA)+.×⌽NA' '' 0 'Value of polynomial with coefficients NV2 at points NV1.' '(NV1∘.+,0)⊥NV2' '' 0 'Value of saddle point.' '(<\,(NM=(⍴NM)⍴⌈⌿NM)^NM=⍉(⌽⍴NM)⍴⌊/NM)/,NM' '' 0 'Value of Taylor series with coefficients NV at point NS.' '+/NV×(NS*A)÷!A←¯1+⍳⍴NV' '' 0 'Value of Taylor series with coefficients NV at point NS.' '+/NV××\1,NS÷⍳¯1+⍴NV' '' 0 'Variance (dispersion) of NV.' '(+/(NV-(+/NV)÷⍴NV)*2)÷⍴NV' '' 0 'Vector (cross) product of vectors.' '((1⌽NA1)×¯1⌽NA2)-(¯1⌽NA1)×1⌽NA2' '' 0 ('Vector (IV[1]⍴1),(IV[2]⍴0),(IV[3]⍴1),',(⎕ucs 8230)) '≠\(⍳+/IV)∊+\⎕IO,IV' '' 0 ('Vector (IV1[1]⍴1),(IV2[1]⍴0),(IV1[2]⍴1),',(⎕ucs 8230)) '(⍳+/IV1,IV2)∊+\1+¯1↓0,((⍳+/IV1)∊+\IV1)\IV2' '' 0 ('Vector (IV2[1]+⍳IV1[1]),(IV2[2]+⍳IV1[2]),(IV2[3]+⍳IV1[3]),',(⎕ucs 8230)) '⎕IO++\1+((⍳+/IV1)∊+\⎕IO,IV1)\IV2-¯1↓1,IV1+IV2' '⍴IV1 ←→ ⍴IV2' 0 'Vector having as many ones as XM has rows.' '∨/0/XM' '' 0 'Vector of length IS2 with IS1 ones on the left, the rest zeroes.' 'IS2↑IS1⍴1' '' 0 'Vector of matrices to matrix of vectors.' 'MV←⍉↑⊂[1]¨VM' '0=⎕IO' 2 'Vector of matrices to matrix of vectors.' 'MV←⍉↑⊂[2]¨VM' '1=⎕IO' 2 'Vector of matrices to vector of vectors.' 'VV←⊃,/⊂[1]¨VM' '0=⎕IO' 2 'Vector of matrices to vector of vectors.' 'VV←⊃,/⊂[2]¨VM' '1=⎕IO' 2 'Vector of positions of ones in boolean array.' 'VP←(,BA)/,⊃∘.,/⍳¨⍴BA' '' 2 'Vector to expand a new element after each one in BV.' '(,BV,[1.5]1)/,BV,[1.5]~BV' '' 0 'Vector to matrix at selected characters.' ('CM←↑(~V∊C)',(⎕ucs 8838 86)) '' 2 'Vectorize - for any rank.' 'V←⊂[1↓⍳⍴⍴A]1/A' '' 2 'Vectorize - keep only 1st column of M.' 'V←M[;0]' '0=⎕IO' 2 'Vectorize - keep only 1st column of M.' 'V←M[;1]' '1=⎕IO' 2 'Vectors as column matrices in catenation beneath each other.' 'X,[1+.5×⌈/(⍴⍴X),⍴⍴Y]Y' '' 0 'Vectors as row matrices in catenation upon each other.' 'X,[.5×⌈/(⍴⍴X),⍴⍴Y]Y' '' 0 'Weekday (S-S:0-6) given Y M D.' 'IS←7|+/D(⍎M⊃''0032503514624''),⌊5 1.25×4 100⊤Y-3>M' '1=⎕IO' 2 'Weekday (S-S:0-6) given Y M D.' 'IS←7|+/D(⍎M⊃''032503514624''),⌊5 1.25×4 100⊤Y-3>M' '0=⎕IO' 2 'Weekday (S-S:0-6) of first of year IS (YYYY).' 'IS←7|6+IS+-/⌈IS÷4 100 400' '' 2 'Weighted average of vector/matrix columns.' 'WAVG←(N+.×NM)÷+/N' '' 2 'Weighted average of vector/matrix rows.' 'WAVG←(NM+.×N)÷+/N' '' 2 'WHERE. Execute "fn" on condition B mask.' '((,B)/,A)←fn(,B)/,A' '' 2 'Which class do elements of NA belong to.' '+/NA∘.≥0 50 100 1000' '' 0 'Which elements of XA are not in set XV (difference of sets).' '(⎕IO+⍴XV)=XV⍳XA' '' 0 'Which rows of M are all numeric?' 'B←0∧.=↑¨0⍴¨M' '' 2 'Widening matrix XM1 to be compatible with XM2.' '((0 1×⍴XM2)⌈⍴XM1)↑XM1' '' 0 'Window enclosing Z.' 'Z←0J1⊥0 1⌽2/|⌊/M,[0.5]-M←11 9∘.○Z' '0=⎕IO' 2 'Window enclosing Z.' 'Z←0J1⊥0 1⌽2/|⌊/M,[1.5]-M←11 9∘.○Z' '1=⎕IO' 2 'Word lengths of words in list CA.' 'CA+.≠'' ''' '' 0 'XA1 (XA2 is ignored).' 'XA1{⍺}XA2' '' 1 'XA1 and XA2 are ignored (no result produced).' 'XA1{}XA2' '' 1 'XA1 and XA2 as a two item vector (XA1 XA2).' 'XA1{⍺ ⍵}XA2' '' 1 'XA1 redefined to be XA1 with XA2 catenated along its first axis.' 'XA1⍪←XA2' '' 1 'XA1 redefined to be XA1 with XA2 catenated along its last axis.' 'XA1,←XA2' '' 1 'XA2 (XA1 is ignored).' 'XA1{⍵}XA2' '' 1 'XM with the rows sorted into numerical or alphabetical order.' '{⍵[⍋⍵;]}XM' '' 1 'XM with the rows sorted into reverse numerical or alphabetical order.' '{⍵[⍒⍵;]}XM' '' 1 'XM1⍳XM2 for rows of matrices.' '⎕IO++⌿^⍀XM1∨.≠⍉XM2' '' 0 'XV sorted into numerical or alphabetical order.' '{⍵[⍋⍵]}XV' '' 1 'XV sorted into reverse numerical or alphabetical order.' '{⍵[⍒⍵]}XV' '' 1 'Y:th moment of NV.' '(+/(NV-(+/NV)÷⍴NV)*Y)÷⍴NV' '' 0 'Z←AX(lo OAX I)AY. Run "lo" on axes I of AX.' 'Z←↑[I](⊂[I]AX)lo⊂AY' '' 2 'Z←AX(lo OAY I)AY. Run "lo" on axes I of AY.' 'Z←↑[I](⊂AX)lo⊂[I]AY' '' 2 'Z←X(lo IO B)Y;⎕IO. Run "lo" in origin B.' ('Z←X lo Y',(⎕ucs 8867),'⎕IO←B') '' 2 'Z←X(lo PR)Y. Perform "lo" as scalar.' '⍎''Z←X lo '',((1<|≡Y)/''PR¨''),''Y''' '' 2 'Zero array of shape and size of NA.' '0×NA' '' 0 'Zero or space depending on the type of XA (fill element).' '1↑0⍴XA' '' 0 'Zeroing a vector (without change of size).' 'NV[]←0' '' 0 'Zeroing all boolean values.' '0^BA' '' 0 'Zeroing elements of NA1 depending on their values.' 'NA1×~NA1∊NA2' '' 0 'Zeros, same shape and structure.' 'B←A≠A' '' 2 'Zeros, same shape plus one.' 'B←0+/V' '' 2 'Zeros, same shape when A is simple.' 'B←A∊⍬' '' 2

⌷idioms←
<array><shape>757 4</shape><number>0</number>
<array><shape>42</shape><string>progressive index of (without replacement)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>43</shape><string>((⍴XV1)⍴⍋⍋XV1⍳XV1,XV2)⍳(⍴XV2)⍴⍋⍋XV1⍳XV2,XV1</string></array><number>0</number>
<array><shape>47</shape><string>ascending cardinal numbers (ranking, shareable)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>17</shape><string>⌊.5×(⍋⍋NV)+⌽⍋⍋⌽NV</string></array><number>0</number>
<array><shape>58</shape><string>cumulative maxima (⌈\) of subvectors of NV indicated by BV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>28</shape><string>NV[A⍳⌈\A←⍋A[⍋(+\BV)[A←⍋NV]]]</string></array><number>0</number>
<array><shape>58</shape><string>cumulative minima (⌊\) of subvectors of NV indicated by BV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>28</shape><string>NV[A⍳⌈\A←⍋A[⍋(+\BV)[A←⍒NV]]]</string></array><number>0</number>
<array><shape>42</shape><string>progressive index of (without replacement)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>43</shape><string>((⍋XV1⍳XV1,XV2)⍳⍳⍴XV1)⍳(⍋XV1⍳XV2,XV1)⍳⍳⍴XV2</string></array><number>0</number>
<array><shape>50</shape><string>test if NV1 and NV2 are permutations of each other</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>21</shape><string>NV2[⍋NV2]^.=NV1[⍋NV1]</string></array><number>0</number>
<array><shape>34</shape><string>test if IV is a permutation vector</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>IV^.=⍋⍋IV</string></array><number>0</number>
<array><shape>59</shape><string>grade up (⍋) for sorting subvectors of NV having lengths IV</string></array>
<array><shape>11</shape><string>⍴NQ ←→ +/IV</string></array>
<array><shape>30</shape><string>A[⍋(+\(⍳⍴NV)∊+\⎕IO,IV)[A←⍋NV]]</string></array><number>0</number>
<array><shape>35</shape><string>index of the elements of NV1 in NV2</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>65</shape><string>(((1,A)/B)⌊1+⍴NV2)[(⍴NV2)↓(+\1,A←(1↓A)≠¯1↓A←A[B])[⍋B←⍋A←NV2,NV1]]</string></array><number>0</number>
<array><shape>59</shape><string>minima (⌊/) of elements of subvectors of NV indicated by BV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>24</shape><string>NV[A[BV/⍋(+\BV)[A←⍋NV]]]</string></array><number>0</number>
<array><shape>57</shape><string>grade up (⍋) for sorting subvectors of NV indicated by BV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>17</shape><string>A[⍋(+\BV)[A←⍋NV]]</string></array><number>0</number>
<array><shape>32</shape><string>occurences of the elements of NV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>18</shape><string>|-⌿(2,⍴NV)⍴⍋⍋NV,NV</string></array><number>0</number>
<array><shape>46</shape><string>sorting rows of matrix NM into ascending order</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>40</shape><string>(⍴NM)⍴(,NM)[A[⍋(,⍉(⌽⍴NM)⍴⍳≢NM)[A←⍋,NM]]]</string></array><number>0</number>
<array><shape>51</shape><string>adding a new dimension after dimension IS1 IS2-fold</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>30</shape><string>(⍋⍋(IS1+1),⍳⍴⍴XA)⍉(IS2,⍴XA)⍴XA</string></array><number>0</number>
<array><shape>46</shape><string>sorting rows of matrix NM into ascending order</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>45</shape><string>A←(⍋,NM)-⎕IO ⋄ (⍴NM)⍴(,NM)[⎕IO+A[⍋⌊A÷¯1↑⍴NM]]</string></array><number>0</number>
<array><shape>49</shape><string>IS smallest elements of NV in order of occurrence</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>15</shape><string>((⍋⍋NV)∊⍳IS)/NV</string></array><number>0</number>
<array><shape>51</shape><string>merging XV1, XV2, XV3, … under control of IV (mesh)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>21</shape><string>(XV1,XV2,XV3,…)[⍋⍋IV]</string></array><number>0</number>
<array><shape>46</shape><string>merging XV1 and XV2 under control of BV (mesh)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>15</shape><string>(XV1,XV2)[⍋⍋BV]</string></array><number>0</number>
<array><shape>51</shape><string>ascending cardinal numbers (ranking, all different)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>⍋⍋NV</string></array><number>0</number>
<array><shape>61</shape><string>grade down (⍒) for sorting subvectors of NV having lengths IV</string></array>
<array><shape>11</shape><string>⍴NQ ←→ +/IV</string></array>
<array><shape>30</shape><string>A[⍋(+\(⍳⍴NV)∊+\⎕IO,IV)[A←⍒NV]]</string></array><number>0</number>
<array><shape>59</shape><string>maxima (⌈/) of elements of subvectors of NV indicated by BV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>24</shape><string>NV[A[BV/⍋(+\BV)[A←⍒NV]]]</string></array><number>0</number>
<array><shape>59</shape><string>grade down (⍒) for sorting subvectors of NV indicated by BV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>17</shape><string>A[⍋(+\BV)[A←⍒NV]]</string></array><number>0</number>
<array><shape>48</shape><string>IS largest elements of NV in order of occurrence</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>15</shape><string>((⍋⍒NV)∊⍳IS)/NV</string></array><number>0</number>
<array><shape>46</shape><string>merging XV1 and XV2 under control of BV (mesh)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>15</shape><string>(XV2,XV1)[⍋⍒BV]</string></array><number>0</number>
<array><shape>52</shape><string>descending cardinal numbers (ranking, all different)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>⍋⍒NV</string></array><number>0</number>
<array><shape>54</shape><string>sorting rows of XM according to key XV (alphabetizing)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>20</shape><string>XM[⍋(1+⍴XV)⊥XV⍳⍉XM;]</string></array><number>0</number>
<array><shape>14</shape><string>diagonal ravel</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>27</shape><string>(,XA)[⍋+⌿(⍴XA)⊤(⍳⍴,XA)-⎕IO]</string></array><number>0</number>
<array><shape>29</shape><string>grade up according to key XV1</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>8</shape><string>⍋XV1⍳XV2</string></array><number>0</number>
<array><shape>34</shape><string>test if IV is a permutation vector</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>14</shape><string>IV[⍋IV]^.=⍳⍴IV</string></array><number>0</number>
<array><shape>41</shape><string>sorting a matrix into lexicographic order</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>19</shape><string>NM[⍋+⌿A<.-⍉A←NM,0;]</string></array><number>0</number>
<array><shape>49</shape><string>sorting words in list CM according to word length</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>14</shape><string>CM[⍋CM+.≠' ';]</string></array><number>0</number>
<array><shape>50</shape><string>classification of NV1 to classes starting with NV2</string></array>
<array><shape>11</shape><string>NQ2<.≥1⌽NQ2</string></array>
<array><shape>50</shape><string>A[(B/C)-⍴NV2]←B/+\~B←(⍴NV2)<C←⍋NV2,NV1+A←0×NV1 ⋄ A</string></array><number>0</number>
<array><shape>62</shape><string>rotate first elements (1⌽) of subvectors of XV indicated by BV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>12</shape><string>XV[⍋BV++\BV]</string></array><number>0</number>
<array><shape>31</shape><string>doubling quotes (for execution)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>43</shape><string>(CV,'''')[(⎕IO+⍴CV)⌊⍋(⍳⍴CV),(''''=CV)/⍳⍴CV]</string></array><number>0</number>
<array><shape>48</shape><string>inserting IS *'s into vector CV after indices IV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>39</shape><string>(CV,'*')[(⎕IO+⍴CV)⌊⍋(⍳⍴CV),(IS×⍴IV)⍴IV]</string></array><number>0</number>
<array><shape>6</shape><string>median</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>18</shape><string>NV[(⍋NV)[⌈.5×⍴NV]]</string></array><number>0</number>
<array><shape>35</shape><string>index of last maximum element of NV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>¯1↑⍋NV</string></array><number>0</number>
<array><shape>38</shape><string>index of (first) minimum element of NV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>1↑⍋NV</string></array><number>0</number>
<array><shape>43</shape><string>expansion vector with zero after indices IV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>16</shape><string>(⍴NV)≥⍋(⍳⍴NV),IV</string></array><number>0</number>
<array><shape>56</shape><string>catenating IS elements XS before indices IV in vector XV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>37</shape><string>A←IS×⍴,IV ⋄ ((A⍴XS),XV)[⍋(A⍴IV),⍳⍴XV]</string></array><number>0</number>
<array><shape>55</shape><string>catenating IS elements XS after indices IV in vector XV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>35</shape><string>A←IS×⍴,IV ⋄ (XV,A⍴XS)[⍋(⍳⍴XV),A⍴IV]</string></array><number>0</number>
<array><shape>46</shape><string>merging XV1 and XV2 under control of BV (mesh)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>20</shape><string>A[⍋BV]←A←XV2,XV1 ⋄ A</string></array><number>0</number>
<array><shape>41</shape><string>sorting a matrix according to Y:th column</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>12</shape><string>NM[⍋NM[;Y];]</string></array><number>0</number>
<array><shape>39</shape><string>sorting indices IV according to data NV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>IV[⍋NV[IV]]</string></array><number>0</number>
<array><shape>43</shape><string>choosing sorting direction during execution</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>14</shape><string>⍋NV×(¯1 1)[IS]</string></array><number>0</number>
<array><shape>28</shape><string>sorting XV2 according to XV1</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>XV2[⍋XV1]</string></array><number>0</number>
<array><shape>31</shape><string>sorting NV into ascending order</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>NV[⍋NV]</string></array><number>0</number>
<array><shape>23</shape><string>inverting a permutation</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>3</shape><string>⍋IV</string></array><number>0</number>
<array><shape>33</shape><string>reverse vector XV on condition BS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>12</shape><string>XV[⍒BS!⍳⍴XV]</string></array><number>0</number>
<array><shape>49</shape><string>sorting a matrix into reverse lexicographic order</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>19</shape><string>NM[⍒+⌿A<.-⍉A←NM,0;]</string></array><number>0</number>
<array><shape>50</shape><string>reversal (⌽) of subvectors of NV having lengths IV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>23</shape><string>NV[⌽⍒+\(⍳⍴NV)∊+\⎕IO,IV]</string></array><number>0</number>
<array><shape>48</shape><string>reversal (⌽) of subvectors of XV indicated by BV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>10</shape><string>XV[⌽⍒+\BV]</string></array><number>0</number>
<array><shape>36</shape><string>indices of ones in logical vector BV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>10</shape><string>(+/BV)↑⍒BV</string></array><number>0</number>
<array><shape>36</shape><string>index of first maximum element of NV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>1↑⍒NV</string></array><number>0</number>
<array><shape>32</shape><string>moving all blanks to end of text</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>CV[⍒' '≠CV]</string></array><number>0</number>
<array><shape>32</shape><string>sorting NV into descending order</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>NV[⍒NV]</string></array><number>0</number>
<array><shape>58</shape><string>moving elements satisfying condition BV to the start of XV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>XV[⍒BV]</string></array><number>0</number>
<array><shape>44</shape><string>interpolated value of series (NV1,NV2) at NS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>24</shape><string>NS⊥NV2⌹NV1∘.*⌽-⎕IO-⍳⍴NV1</string></array><number>0</number>
<array><shape>43</shape><string>predicted values of exponential (curve) fit</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>23</shape><string>*A+.×(⍟NV2)⌹A←NV1∘.*0 1</string></array><number>0</number>
<array><shape>59</shape><string>coefficients of exponential (curve) fit of points (NV1,NV2)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>35</shape><string>A←(⍟NV2)⌹NV1∘.*0 1 ⋄ A[1]←*A[1] ⋄ A</string></array><number>0</number>
<array><shape>51</shape><string>predicted values of best linear fit (least squares)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>19</shape><string>A+.×NV2⌹A←NV1∘.*0 1</string></array><number>0</number>
<array><shape>52</shape><string>IS-degree polynomial (curve) fit of points (NV1,NV2)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>16</shape><string>⌽NV2⌹NV1∘.*0,⍳IS</string></array><number>0</number>
<array><shape>51</shape><string>best linear fit of points (NV1,NV2) (least squares)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>13</shape><string>NV2⌹NV1∘.*0 1</string></array><number>0</number>
<array><shape>34</shape><string>binary format of decimal number IS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>23</shape><string>⍕10⊥((1+⌈2⍟⌈/,IS)⍴2)⊤IS</string></array><number>0</number>
<array><shape>48</shape><string>barchart of two integer series (across the page)</string></array>
<array><shape>8</shape><string>≢IM ←→ 2</string></array>
<array><shape>25</shape><string>' *○⍟'[⎕IO+2⊥IM∘.≥⍳⌈/,IM]</string></array><number>0</number>
<array><shape>49</shape><string>case structure with an encoded branch destination</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>→IV[1+2⊥BV]</string></array><number>0</number>
<array><shape>46</shape><string>representation of current time (24 hour clock)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>32</shape><string>A←⍕1000⊥3↑3↓⎕TS ⋄ A[3 6]←':' ⋄ A</string></array><number>0</number>
<array><shape>50</shape><string>representation of current date (descending format)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>30</shape><string>A←⍕1000⊥3↑⎕TS ⋄ A[5 8]←'-' ⋄ A</string></array><number>0</number>
<array><shape>46</shape><string>representation of current time (12 hour clock)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>59</shape><string>(1⌽,' ::',3 2⍴6 0⍕100⊥12 0 0|3↑3↓⎕TS),'AP'[1+12≤⎕TS[4]],'M'</string></array><number>0</number>
<array><shape>23</shape><string>removing duplicate rows</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>25</shape><string>((A⍳A)=⍳⍴A←2⊥XM^.=⍉XM)⌿XM</string></array><number>0</number>
<array><shape>38</shape><string>conversion from hexadecimal to decimal</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>30</shape><string>16⊥-⎕IO-'0123456789ABCDEF'⍳⍉CA</string></array><number>0</number>
<array><shape>46</shape><string>conversion of alphanumeric string into numeric</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>10⊥¯1+⎕D⍳CV</string></array><number>0</number>
<array><shape>55</shape><string>value of polynomial with coefficients NV2 at points NV1</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>14</shape><string>(NV1∘.+,0)⊥NV2</string></array><number>0</number>
<array><shape>54</shape><string>changing connectivity list CM to a connectivity matrix</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>49</shape><string>A←(×/B←0 0+⌈/,CM)⍴0 ⋄ A[⎕IO+B[1]⊥-⎕IO-CM]←1 ⋄ B⍴A</string></array><number>0</number>
<array><shape>52</shape><string>present value of cash flows NV at interest rate NS %</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>15</shape><string>(÷1+NS÷100)⊥⌽NV</string></array><number>0</number>
<array><shape>16</shape><string>justifying right</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>17</shape><string>(1-(' '=CA)⊥1)⌽CA</string></array><number>0</number>
<array><shape>59</shape><string>number of days in month IS of years IA (for all leap years)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>63</shape><string>(12⍴7⍴31 30)[IS]-0⌈¯1+2⊥(IS=2),[.1](0≠400|IA)-(0≠100|IA)-0≠4|IA</string></array><number>0</number>
<array><shape>60</shape><string>number of days in month IS of years IA (for most leap years)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>41</shape><string>(12⍴7⍴31 30)[IS]-0⌈¯1+2⊥(IS=2),[.1]0≠4|IA</string></array><number>0</number>
<array><shape>21</shape><string>encoding current date</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>13</shape><string>100⊥100|3↑⎕TS</string></array><number>0</number>
<array><shape>24</shape><string>removing trailing blanks</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>17</shape><string>(1-(' '=CV)⊥1)↓CV</string></array><number>0</number>
<array><shape>47</shape><string>index of first non-blank, counted from the rear</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>10</shape><string>(' '=CV)⊥1</string></array><number>0</number>
<array><shape>27</shape><string>indexing scattered elements</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>23</shape><string>(,XA)[⎕IO+(⍴XA)⊥IM-⎕IO]</string></array><number>0</number>
<array><shape>61</shape><string>conversion of indices IM of array XA to indices of raveled XA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>16</shape><string>⎕IO+(⍴XA)⊥IM-⎕IO</string></array><number>0</number>
<array><shape>41</shape><string>number of columns in array XA as a scalar</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>0⊥⍴XA</string></array><number>0</number>
<array><shape>51</shape><string>future value of cash flows NV at interest rate NS %</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>13</shape><string>(1+NS÷100)⊥NV</string></array><number>0</number>
<array><shape>32</shape><string>sum of the elements of vector NV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>1⊥NV</string></array><number>0</number>
<array><shape>45</shape><string>last element of numeric vector NV as a scalar</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>0⊥NV</string></array><number>0</number>
<array><shape>33</shape><string>last row of matrix XA as a vector</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>0⊥XA</string></array><number>0</number>
<array><shape>41</shape><string>integer representation of logical vectors</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>2⊥BA</string></array><number>0</number>
<array><shape>52</shape><string>value of polynomial with coefficients NA at point NS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>NS⊥NA</string></array><number>0</number>
<array><shape>38</shape><string>conversion from decimal to hexadecimal</string></array>
<array><shape>7</shape><string>IA∊⍳255</string></array>
<array><shape>44</shape><string>⍉'0123456789ABCDEF'[⎕IO+((⌈⌈/16⍟,IA)⍴16)⊤IA]</string></array><number>0</number>
<array><shape>49</shape><string>all binary representations up to IS (truth table)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>19</shape><string>((⌈2⍟1+IS)⍴2)⊤0,⍳IS</string></array><number>0</number>
<array><shape>33</shape><string>representation of NS1 in base NS2</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>22</shape><string>((1+⌊NS2⍟NS1)⍴NS2)⊤NS1</string></array><number>0</number>
<array><shape>23</shape><string>digits of IS separately</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>18</shape><string>((1+⌊10⍟IS)⍴10)⊤IS</string></array><number>0</number>
<array><shape>36</shape><string>helps locating column positions 1…IS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>19</shape><string>1 0⍕10 10⊤1-⎕IO-⍳IS</string></array><number>0</number>
<array><shape>60</shape><string>conversion of characters to hexadecimal representation (⎕AV)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>47</shape><string>,' ',⍉'0123456789ABCDEF'[⎕IO+16 16⊤-⎕IO-⎕AV⍳CV]</string></array><number>0</number>
<array><shape>24</shape><string>polynomial with roots NV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>50</shape><string>⌽((0,⍳⍴NV)∘.=+⌿~A)+.×(-NV)×.*A←((⍴NV)⍴2)⊤¯1+⍳2*⍴NV</string></array><number>0</number>
<array><shape>28</shape><string>index pairs of saddle points</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>56</shape><string>⎕IO+(⍴NM)⊤-⎕IO-(,(NM=(⍴NM)⍴⌈⌿NM)^NM=⍉(⌽⍴NM)⍴⌊/NM)/⍳×/⍴NM</string></array><number>0</number>
<array><shape>54</shape><string>changing connectivity matrix CM to a connectivity list</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>21</shape><string>(,CM)/1+A⊤¯1+⍳×/A←⍴CM</string></array><number>0</number>
<array><shape>27</shape><string>matrix of all indices of XA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>22</shape><string>⎕IO+(⍴XA)⊤(⍳×/⍴XA)-⎕IO</string></array><number>0</number>
<array><shape>38</shape><string>separating a date YYMMDD to YY, MM, DD</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>⍉(3⍴100)⊤NA</string></array><number>0</number>
<array><shape>36</shape><string>indices of elements XA2 in array XA1</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>35</shape><string>⎕IO+(⍴XA1)⊤(-⎕IO)+(,XA1∊XA2)/⍳⍴,XA1</string></array><number>0</number>
<array><shape>38</shape><string>all pairs of elements of ⍳IS1 and ⍳IS2</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>28</shape><string>⎕IO+(IS1,IS2)⊤(⍳IS1×IS2)-⎕IO</string></array><number>0</number>
<array><shape>51</shape><string>matrix for choosing all subsets of XV (truth table)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>19</shape><string>((⍴XV)⍴2)⊤¯1+⍳2*⍴XV</string></array><number>0</number>
<array><shape>53</shape><string>all binary representations with IS bits (truth table)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>15</shape><string>(IS⍴2)⊤¯1+⍳2*IS</string></array><number>0</number>
<array><shape>50</shape><string>incrementing cyclic counter NA with upper limit NS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>1+NS⊤NA</string></array><number>0</number>
<array><shape>42</shape><string>decoding numeric code ABBCCC into a matrix</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>14</shape><string>10 100 1000⊤IA</string></array><number>0</number>
<array><shape>48</shape><string>integer and fractional parts of positive numbers</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>0 1⊤NA</string></array><number>0</number>
<array><shape>36</shape><string>number of decimals of elements of NV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>23</shape><string>⌊10⍟(⍎('.'≠A)/A←⍕NV)÷NV</string></array><number>0</number>
<array><shape>60</shape><string>number of sortable columns at a time using ⊥ and alphabet CV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>28</shape><string>⌊(1+⍴CV)⍟2*(A=¯1+A←2*⍳128)⍳1</string></array><number>0</number>
<array><shape>44</shape><string>playing order in a cup for IS ranked players</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>23</shape><string>,⍉(A⍴2)⍴(2*A←⌈2⍟IS)↑⍳IS</string></array><number>0</number>
<array><shape>48</shape><string>arithmetic precision of the system (in decimals)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>12</shape><string>⌊|10⍟|1-3×÷3</string></array><number>0</number>
<array><shape>42</shape><string>number of digitpositions in integers in IA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>21</shape><string>1+(IA<0)+⌊10⍟|IA+0=IA</string></array><number>0</number>
<array><shape>43</shape><string>number of digit positions in integers in IA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>31</shape><string>1+⌊10⍟(IA=0)+IA×(1 ¯10)[1+IA<0]</string></array><number>0</number>
<array><shape>43</shape><string>number of digits in positive integers in IA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>13</shape><string>1+⌊10⍟IA+0=IA</string></array><number>0</number>
<array><shape>41</shape><string>case structure according to key vector XV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>10</shape><string>→IV[XV⍳XS]</string></array><number>0</number>
<array><shape>28</shape><string>forming a transitive closure</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>28</shape><string>→⎕LC⌈⍳∨/,(BM←BM∨BM∨.^BM)≠+BM</string></array><number>0</number>
<array><shape>34</shape><string>case structure with integer switch</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>→IS⌽IV</string></array><number>0</number>
<array><shape>25</shape><string>for-loop ending construct</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>19</shape><string>→IS2⌈⍳IS3≥IS1←IS1+1</string></array><number>0</number>
<array><shape>29</shape><string>conditional branch to line IS</string></array>
<array><shape>4</shape><string>IS>0</string></array>
<array><shape>7</shape><string>→IS⌈⍳BS</string></array><number>0</number>
<array><shape>33</shape><string>conditional branch out of program</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>→0⌊⍳BS</string></array><number>0</number>
<array><shape>42</shape><string>conditional branch depending on sign of IS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>10</shape><string>→IV[2+×IS]</string></array><number>0</number>
<array><shape>41</shape><string>continuing from line IS (if NS>0) or exit</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>→IS××NS</string></array><number>0</number>
<array><shape>42</shape><string>case structure using levels with limits NV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>→(NS≥NV)/IV</string></array><number>0</number>
<array><shape>58</shape><string>case structure with logical switch (preferring from start)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>→BV/IV</string></array><number>0</number>
<array><shape>33</shape><string>conditional branch out of program</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>→0×⍳BS</string></array><number>0</number>
<array><shape>34</shape><string>test for symmetricity of matrix XM</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>45</shape><string>⍎⍎'1','↑↓'[⎕IO+^/(⍴XM)=⌽⍴XM],'''0~0∊XM=⍉XM'''</string></array><number>0</number>
<array><shape>38</shape><string>using a variable named according to XS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>18</shape><string>⍎'VAR',(⍕XS),'←XA'</string></array><number>0</number>
<array><shape>25</shape><string>rounding to ⎕PP precision</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>⍎⍕NV</string></array><number>0</number>
<array><shape>46</shape><string>convert character or numeric data into numeric</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>⍎⍕XV</string></array><number>0</number>
<array><shape>58</shape><string>reshaping only one-element numeric vector NV into a scalar</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>⍎⍕NV</string></array><number>0</number>
<array><shape>38</shape><string>graph of XV(NV) at points NV ('NV'∊XV)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>46</shape><string>' *'[⎕IO+(⌽(¯1+⌊/A)+⍳1+(⌈/A)-⌊/A)∘.=A←⌊.5+⍎XV]</string></array><number>0</number>
<array><shape>49</shape><string>conversion of each row to a number (default zero)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>26</shape><string>(CM∨.≠' ')\1↓⍎'0 ',,CM,' '</string></array><number>0</number>
<array><shape>34</shape><string>test for symmetricity of matrix XM</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>29</shape><string>⍎(¯7*A^.=⌽A←⍴XM)↑'0~0∊XM=⍉XM'</string></array><number>0</number>
<array><shape>47</shape><string>execution of expression NV with default value Y</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>20</shape><string>⍎((NV^.=' ')/'Y'),NV</string></array><number>0</number>
<array><shape>41</shape><string>changing XA if a new input value is given</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>42</shape><string>XA←⍎,((2↑'XA'),' ',[.5]A)[⎕IO+~' '^.=A←⍞;]</string></array><number>0</number>
<array><shape>61</shape><string>definite integral of XV(X) in range NV with NS steps ('X'∊XV)</string></array>
<array><shape>8</shape><string>⍴NQ ←→ 2</string></array>
<array><shape>36</shape><string>A+.×⍎XV,0⍴X←NV[1]+(A←--/NV÷NS)×0,⍳NS</string></array><number>0</number>
<array><shape>46</shape><string>test if numeric and conversion to numeric form</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>24</shape><string>1↓⍎'0 ',(^/CV∊' ',⎕D)/CV</string></array><number>0</number>
<array><shape>42</shape><string>tests the social security number (Finnish)</string></array>
<array><shape>5</shape><string>10=⍴X</string></array>
<array><shape>33</shape><string>(¯1↑X)=((~Y∊'GIOQ')/Y)[1+31|⍎9↑X]</string></array><number>0</number>
<array><shape>21</shape><string>conditional execution</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>16</shape><string>⍎BS/'EXPRESSION'</string></array><number>0</number>
<array><shape>34</shape><string>conditional branch out of programs</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>⍎BS/'→'</string></array><number>0</number>
<array><shape>44</shape><string>using default value 100 if XA does not exist</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>24</shape><string>⍎(¯3*2≠⎕NC 'XA')↑'XA100'</string></array><number>0</number>
<array><shape>21</shape><string>conditional execution</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>⍎BS↓'⍝ …'</string></array><number>0</number>
<array><shape>40</shape><string>giving a numeric default value for input</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>14</shape><string>1⍴(⍎⍞,',⍬'),NS</string></array><number>0</number>
<array><shape>61</shape><string>assign values of expressions in CM1 to variables named in CM2</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>35</shape><string>A←⍎,',','(','0','⍴',CM2,'←',CM1,')'</string></array><number>0</number>
<array><shape>56</shape><string>evaluation of several expressions; results form a vector</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>20</shape><string>⍎,',','(',',',XA,')'</string></array><number>0</number>
<array><shape>37</shape><string>sum of numbers in character matrix XM</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>8</shape><string>⍎,'+',XM</string></array><number>0</number>
<array><shape>42</shape><string>indexing when rank is not known beforehand</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>28</shape><string>⍎'XA[',((¯1+⍴⍴XA)⍴';'),'IA]'</string></array><number>0</number>
<array><shape>53</shape><string>numeric headers (elements of NV) for rows of table XM</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>19</shape><string>(3⌽7 0⍕NV∘.+,0),⍕XM</string></array><number>0</number>
<array><shape>50</shape><string>formatting a numerical vector to run down the page</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>8</shape><string>⍕NV∘.+,0</string></array><number>0</number>
<array><shape>49</shape><string>representation of current date (ascending format)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>34</shape><string>A←⍕⌽3↑⎕TS ⋄ A[(' '=A)/⍳⍴A]←'.' ⋄ A</string></array><number>0</number>
<array><shape>41</shape><string>representation of current date (American)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>39</shape><string>A←⍕100|1⌽3↑⎕TS ⋄ A[(' '=A)/⍳⍴A]←'/' ⋄ A</string></array><number>0</number>
<array><shape>48</shape><string>formatting with zero values replaced with blanks</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>39</shape><string>(⍴A)⍴B\(B←,('0'≠A)∨' '≠¯1⌽A)/,A←' ',⍕XA</string></array><number>0</number>
<array><shape>55</shape><string>number of digit positions in scalar NS (depends on ⎕PP)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>⍴⍕NS</string></array><number>0</number>
<array><shape>43</shape><string>leading zeroes for IV in fields of width IS</string></array>
<array><shape>4</shape><string>IV≥0</string></array>
<array><shape>24</shape><string>0 1↓(2↑IS+1)⍕IV∘.+,10*IS</string></array><number>0</number>
<array><shape>63</shape><string>row-by-row formatting (width IS) of NM with IV decimals per row</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>46</shape><string>((1,IS)×⍴NM)⍴2 1 3⍉(⌽IS,⍴NM)⍴(,IS,[1.1]IV)⍕⍉NM</string></array><number>0</number>
<array><shape>54</shape><string>formatting NA with IV2 decimals in fields of width IV1</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>18</shape><string>(,IV1,[1.1]IV2)⍕NA</string></array><number>0</number>
<array><shape>59</shape><string>IV2-shaped array of random numbers within ( IV1[1],IV1[2] ]</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>18</shape><string>IV1[1]+?IV2⍴--/IV1</string></array><number>0</number>
<array><shape>31</shape><string>removing punctuation characters</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>19</shape><string>(~XV∊' .,:;?''')/XV</string></array><number>0</number>
<array><shape>56</shape><string>choosing IA1 objects out of ⍳IA2 with replacement (roll)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>8</shape><string>?IA1⍴IA2</string></array><number>0</number>
<array><shape>59</shape><string>choosing IS2 objects out of ⍳IS1 without replacement (deal)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>IS2?IS1</string></array><number>0</number>
<array><shape>14</shape><string>arctan NA2÷NA1</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>63</shape><string>((NA1≠0)×¯3○NA2÷NA1+NA1=0)+○((NA1=0)×.5××NA2)+(NA1<0)×1-2×NA2<0</string></array><number>0</number>
<array><shape>34</shape><string>conversion from degrees to radians</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>8</shape><string>NA×○÷180</string></array><number>0</number>
<array><shape>34</shape><string>conversion from radians to degrees</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>NA×180÷○1</string></array><number>0</number>
<array><shape>59</shape><string>rotation matrix for angle NS (in radians) counter-clockwise</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>23</shape><string>2 2⍴1 ¯1 1 1×2 1 1 2○NS</string></array><number>0</number>
<array><shape>57</shape><string>number of permutations of NA1 objects taken NA2 at a time</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>14</shape><string>(!NA2)×NA2!NA1</string></array><number>0</number>
<array><shape>55</shape><string>value of Taylor series with coefficients NV at point NS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>22</shape><string>+/NV×(NS*A)÷!A←¯1+⍳⍴NV</string></array><number>0</number>
<array><shape>56</shape><string>poisson distribution of states IA with average number NS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>18</shape><string>(*-NS)×(NS*IA)÷!IA</string></array><number>0</number>
<array><shape>14</shape><string>gamma function</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>!NS-1</string></array><number>0</number>
<array><shape>54</shape><string>binomial distribution of IS trials with probability NS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>36</shape><string>(A!IS)×(NS*A)×(1-NS)*IS-A←-⎕IO-⍳IS+1</string></array><number>0</number>
<array><shape>13</shape><string>beta function</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>22</shape><string>÷NS2×(NS1-1)!NS2+NS1-1</string></array><number>0</number>
<array><shape>55</shape><string>selecting elements satisfying condition BA, others to 1</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>BA!NA</string></array><number>0</number>
<array><shape>57</shape><string>number of combinations of NA1 objects taken NA2 at a time</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>NA2!NA1</string></array><number>0</number>
<array><shape>56</shape><string>removing elements XA from beginning and end of vector XV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>34</shape><string>((A⍳1)-⎕IO)↓(⎕IO-(⌽A←~XV∊XA)⍳1)↓XV</string></array><number>0</number>
<array><shape>41</shape><string>alphabetical comparison with alphabets XV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>15</shape><string>(XV⍳XA1)<XV⍳XA2</string></array><number>0</number>
<array><shape>54</shape><string>sum over elements of NV1 determined by elements of NV2</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>33</shape><string>NV1+.×NV2∘.=((⍳⍴NV2)=NV2⍳NV2)/NV2</string></array><number>0</number>
<array><shape>44</shape><string>first occurrence of string XV1 in string XV2</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>26</shape><string>(^⌿(¯1+⍳⍴XV1)⌽XV1∘.=XV2)⍳1</string></array><number>0</number>
<array><shape>23</shape><string>removing duplicate rows</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>31</shape><string>((A⍳A)=⍳⍴A←⎕IO++⌿^⍀XM∨.≠⍉XM)⌿XM</string></array><number>0</number>
<array><shape>42</shape><string>first occurrence of string XV in matrix XM</string></array>
<array><shape>13</shape><string>¯1↑⍴XM ←→ ⍴XV</string></array>
<array><shape>11</shape><string>(XM^.=XV)⍳1</string></array><number>0</number>
<array><shape>36</shape><string>indices of ones in logical vector BV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>12</shape><string>(+\BV)⍳⍳+/BV</string></array><number>0</number>
<array><shape>59</shape><string>executing costly monadic function F on repetitive arguments</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>26</shape><string>(F A/XV)[+\A←(XV⍳XV)=⍳⍴XV]</string></array><number>0</number>
<array><shape>38</shape><string>index of (first) maximum element of NV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>NV⍳⌈/NV</string></array><number>0</number>
<array><shape>44</shape><string>index of first occurrence of elements of CV2</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>⌊/CV1⍳CV2</string></array><number>0</number>
<array><shape>38</shape><string>index of (first) minimum element of NV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>NV⍳⌊/NV</string></array><number>0</number>
<array><shape>43</shape><string>test if each element of XV occurs only once</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>14</shape><string>^/(XV⍳XV)=⍳⍴XV</string></array><number>0</number>
<array><shape>43</shape><string>test if all elements of vector XV are equal</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>^/⎕IO=XV⍳XV</string></array><number>0</number>
<array><shape>31</shape><string>interpretation of roman numbers</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>54</shape><string>+/A×¯1*A<1⌽A←0,(1000 500 100 50 10 5 1)['MDCLXAVI'⍳XA]</string></array><number>0</number>
<array><shape>42</shape><string>removing elements XA from end of vector XV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>20</shape><string>(⎕IO-(~⌽XV∊XA)⍳1)↓XV</string></array><number>0</number>
<array><shape>24</shape><string>removing trailing blanks</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>18</shape><string>(1-(⌽' '≠CV)⍳1)↓CV</string></array><number>0</number>
<array><shape>57</shape><string>index of last occurrence of XA in XV (⎕IO-1 if not found)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>28</shape><string>((¯1 1)[2×⎕IO]+⍴XV)-(⌽XV)⍳XA</string></array><number>0</number>
<array><shape>53</shape><string>index of last occurrence of XA in XV (0 if not found)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>16</shape><string>(1+⍴XV)-(⌽XV)⍳XA</string></array><number>0</number>
<array><shape>59</shape><string>index of last occurrence of XA in XV, counted from the rear</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>8</shape><string>(⌽XV)⍳XA</string></array><number>0</number>
<array><shape>59</shape><string>index of first occurrence of XA in XV (circularly) after IS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>23</shape><string>⎕IO+(⍴XV)|IS+(IS⌽XV)⍳XA</string></array><number>0</number>
<array><shape>54</shape><string>alphabetizing CA; equal alphabets in same column of CM</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>17</shape><string>(¯1↑⍴CM)|(,CM)⍳CA</string></array><number>0</number>
<array><shape>44</shape><string>changing index of an unfound element to zero</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>13</shape><string>(1+⍴XV)|XV⍳XA</string></array><number>0</number>
<array><shape>58</shape><string>replacing elements of XA in set XV1 with corresponding XV2</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>46</shape><string>A[B/⍳⍴B]←XV2[(B←B≤⍴XV2)/B←XV1⍳A←,XA] ⋄ (⍴XA)⍴A</string></array><number>0</number>
<array><shape>33</shape><string>removing duplicate elements (nub)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>17</shape><string>((XV⍳XV)=⍳⍴XV)/XV</string></array><number>0</number>
<array><shape>16</shape><string>first word in CV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>14</shape><string>(¯1+CV⍳' ')↑CV</string></array><number>0</number>
<array><shape>48</shape><string>removing elements XA from beginning of vector XV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>21</shape><string>(((~XV∊XA)⍳1)-⎕IO)↓XV</string></array><number>0</number>
<array><shape>23</shape><string>removing leading zeroes</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>18</shape><string>(¯1+(XV='0')⍳0)↓XV</string></array><number>0</number>
<array><shape>39</shape><string>index of first one after index IS in BV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>12</shape><string>IS+(IS↓BV)⍳1</string></array><number>0</number>
<array><shape>60</shape><string>changing index of an unfound element to zero (not effective)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>13</shape><string>(XA∊XV)×XV⍳XA</string></array><number>0</number>
<array><shape>58</shape><string>indicator of first occurrence of each unique element of XV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>12</shape><string>(XV⍳XV)=⍳⍴XV</string></array><number>0</number>
<array><shape>23</shape><string>inverting a permutation</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>IV⍳⍳⍴IV</string></array><number>0</number>
<array><shape>55</shape><string>index of first differing element in vectors XV1 and XV2</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>(XV2≠XV1)⍳1</string></array><number>0</number>
<array><shape>59</shape><string>which elements of XA are not in set XV (difference of sets)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>15</shape><string>(⎕IO+⍴XV)=XV⍳XA</string></array><number>0</number>
<array><shape>54</shape><string>changing numeric code NA into corresponding name in NV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>10</shape><string>CM[NV⍳NA;]</string></array><number>0</number>
<array><shape>32</shape><string>index of key XA in key vector XV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>XV⍳XA</string></array><number>0</number>
<array><shape>43</shape><string>conversion from characters to numeric codes</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>⎕AV⍳XA</string></array><number>0</number>
<array><shape>40</shape><string>index of first satisfied condition in BV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>BV⍳1</string></array><number>0</number>
<array><shape>53</shape><string>pascal's triangle of order IS (binomial coefficients)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>12</shape><string>⍉A∘.!A←0,⍳IS</string></array><number>0</number>
<array><shape>13</shape><string>maximum table</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>(⍳IS)∘.⌈⍳IS</string></array><number>0</number>
<array><shape>47</shape><string>number of decimals (up to IS) of elements of NA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>39</shape><string>0+.≠(⌈(10*IS)×10*⎕IO-⍳IS+1)∘.|⌈NA×10*IS</string></array><number>0</number>
<array><shape>41</shape><string>greatest common divisor of elements of IV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>22</shape><string>⌈/(^/0=A∘.|IV)/A←⍳⌊/IV</string></array><number>0</number>
<array><shape>18</shape><string>divisibility table</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>14</shape><string>0=(⍳⌈/IV)∘.|IV</string></array><number>0</number>
<array><shape>19</shape><string>all primes up to IS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>23</shape><string>(2=+⌿0=(⍳IS)∘.|⍳IS)/⍳IS</string></array><number>0</number>
<array><shape>64</shape><string>compound interest for principals NA2 at rates NA3 % in times NA1</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>23</shape><string>NA2∘.×(1+NA3÷100)∘.*NA1</string></array><number>0</number>
<array><shape>56</shape><string>product of two polynomials with coefficients NV1 and NV2</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>31</shape><string>+⌿(⎕IO-⍳⍴NV1)⌽NV1∘.×NV2,0×1↓NV1</string></array><number>0</number>
<array><shape>12</shape><string>shur product</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>17</shape><string>1 2 1 2⍉NM1∘.×NM2</string></array><number>0</number>
<array><shape>21</shape><string>direct matrix product</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>17</shape><string>1 3 2 4⍉NM1∘.×NM2</string></array><number>0</number>
<array><shape>20</shape><string>multiplication table</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>(⍳IS)∘.×⍳IS</string></array><number>0</number>
<array><shape>54</shape><string>replicating a dimension of rank three array XQ IS-fold</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>25</shape><string>XQ[;,(IS⍴1)∘.×⍳(⍴XQ)[2];]</string></array><number>0</number>
<array><shape>37</shape><string>array and its negative ('plus minus')</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>NA∘.×1 ¯1</string></array><number>0</number>
<array><shape>41</shape><string>move set of points NM into first quadrant</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>15</shape><string>1 2 1⍉NM∘.-⌊/NM</string></array><number>0</number>
<array><shape>62</shape><string>test relations of elements of NA1 to range NA2; result in ¯2…2</string></array>
<array><shape>9</shape><string>2=¯1↑⍴NA2</string></array>
<array><shape>12</shape><string>+/×NA1∘.-NA2</string></array><number>0</number>
<array><shape>39</shape><string>occurrences of string XV1 in string XV2</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>54</shape><string>(XV2[A∘.+¯1+⍳⍴XV1]^.=XV1)/A←(A=1↑XV1)/⍳⍴A←(1-⍴XV1)↓XV2</string></array><number>0</number>
<array><shape>44</shape><string>sum of common parts of matrices (matrix sum)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>17</shape><string>1 2 1 2⍉NM1∘.+NM2</string></array><number>0</number>
<array><shape>27</shape><string>adding NV to each row of NM</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>13</shape><string>1 1 2⍉NV∘.+NM</string></array><number>0</number>
<array><shape>27</shape><string>adding NV to each row of NM</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>13</shape><string>1 2 1⍉NM∘.+NV</string></array><number>0</number>
<array><shape>30</shape><string>adding NV to each column of NM</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>13</shape><string>2 1 2⍉NV∘.+NM</string></array><number>0</number>
<array><shape>30</shape><string>adding NV to each column of NM</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>13</shape><string>1 2 2⍉NM∘.+NV</string></array><number>0</number>
<array><shape>26</shape><string>hilbert matrix of order IS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>15</shape><string>÷¯1+(⍳IS)∘.+⍳IS</string></array><number>0</number>
<array><shape>38</shape><string>moving index of width IS for vector XV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>18</shape><string>(0,⍳(⍴XV)-IS)∘.+IS</string></array><number>0</number>
<array><shape>51</shape><string>indices of subvectors of length IS starting at IV+1</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>8</shape><string>IV∘.+⍳IS</string></array><number>0</number>
<array><shape>52</shape><string>reshaping numeric vector NV into a one-column matrix</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>NV∘.+,0</string></array><number>0</number>
<array><shape>53</shape><string>annuity coefficient: IA periods at interest rate NA %</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>35</shape><string>((⍴A)⍴NA÷100)÷A←⍉1-(1+NA÷100)∘.*-IA</string></array><number>0</number>
<array><shape>42</shape><string>matrix with IV[i] trailing zeroes on row i</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>IV∘.<⌽⍳⌈/IV</string></array><number>0</number>
<array><shape>41</shape><string>matrix with IV[i] leading zeroes on row i</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>10</shape><string>IV∘.<⍳⌈/IV</string></array><number>0</number>
<array><shape>44</shape><string>distribution of NA into intervals between NV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>28</shape><string>+/((¯1↓NV)∘.≤NA)^(1↓NV)∘.>NA</string></array><number>0</number>
<array><shape>48</shape><string>histogram (distribution barchart; down the page)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>45</shape><string>' ⎕'[⎕IO+(⌽⍳⌈/A)∘.≤A←+/(⍳1+(⌈/IV)-⌊/IV)∘.=IV]</string></array><number>0</number>
<array><shape>42</shape><string>barchart of integer values (down the page)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>23</shape><string>' ⎕'[⎕IO+(⌽⍳⌈/IV)∘.≤IV]</string></array><number>0</number>
<array><shape>40</shape><string>test if NM is an upper triangular matrix</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>20</shape><string>^/,(0≠NM)≤A∘.≤A←⍳≢NM</string></array><number>0</number>
<array><shape>52</shape><string>number of ?s intersecting ?s (NV1=starts, NV2=stops)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>16</shape><string>+/A^⍉A←NV1∘.≤NV2</string></array><number>0</number>
<array><shape>45</shape><string>contour levels NV at points with altitudes NS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>13</shape><string>NV[+⌿NV∘.≤NS]</string></array><number>0</number>
<array><shape>29</shape><string>IS×IS upper triangular matrix</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>(⍳IS)∘.≤⍳IS</string></array><number>0</number>
<array><shape>59</shape><string>classification of elements NV into IS classes of equal size</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>29</shape><string>+/(A×IS÷⌈/A←NV-⌊/NV)∘.≥¯1+⍳IS</string></array><number>0</number>
<array><shape>40</shape><string>matrix with IV[i] trailing ones on row i</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>IV∘.≥⌽⍳⌈/IV</string></array><number>0</number>
<array><shape>16</shape><string>comparison table</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>12</shape><string>IV∘.≥⍳⌈/IV,0</string></array><number>0</number>
<array><shape>47</shape><string>barchart of NV with height NS (across the page)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>30</shape><string>' ⎕'[⎕IO+NV∘.≥(⌈/NV)×(⍳NS)÷NS]</string></array><number>0</number>
<array><shape>44</shape><string>barchart of integer values (across the page)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>20</shape><string>' ⎕'[⎕IO+IV∘.≥⍳⌈/IV]</string></array><number>0</number>
<array><shape>39</shape><string>matrix with IV[i] leading ones on row i</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>10</shape><string>IV∘.≥⍳⌈/IV</string></array><number>0</number>
<array><shape>39</shape><string>test if NM is a lower triangular matrix</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>20</shape><string>^/,(0≠NM)≤A∘.≥A←⍳≢NM</string></array><number>0</number>
<array><shape>42</shape><string>test if NA is within range [ NV[1],NV[2] )</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>≠/NA∘.≥NV</string></array><number>0</number>
<array><shape>55</shape><string>ordinal numbers of words in CV that indices IA point to</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>24</shape><string>⎕IO++/IA∘.≥(' '=CV)/⍳⍴CV</string></array><number>0</number>
<array><shape>39</shape><string>which class do elements of NA belong to</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>20</shape><string>+/NA∘.≥0 50 100 1000</string></array><number>0</number>
<array><shape>29</shape><string>IS×IS lower triangular matrix</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>(⍳IS)∘.≥⍳IS</string></array><number>0</number>
<array><shape>36</shape><string>moving all blanks to end of each row</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>45</shape><string>(⍴CA)⍴(,(+/A)∘.>-⎕IO-⍳¯1↑⍴CA)\(,A←CA≠' ')/,CA</string></array><number>0</number>
<array><shape>55</shape><string>justifying right fields of XV (lengths IV) to length IS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>21</shape><string>(,IV∘.>⌽(⍳IS)-⎕IO)\XV</string></array><number>0</number>
<array><shape>54</shape><string>justifying left fields of XV (lengths IV) to length IS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>20</shape><string>(,IV∘.>(⍳IS)-⎕IO)\XV</string></array><number>0</number>
<array><shape>65</shape><string>indices of elements of XM2 in corr. rows of XM1 (XM1[i;]⍳XM2[i;])</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>23</shape><string>1++/^\1 2 1 3⍉XM2∘.≠XM1</string></array><number>0</number>
<array><shape>51</shape><string>indicating equal elements of XV as a logical matrix</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>24</shape><string>⍉XV∘.=(1 1⍉<\XV∘.=XV)/XV</string></array><number>0</number>
<array><shape>55</shape><string>changing connection matrix IM (¯1 → 1) to a node matrix</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>21</shape><string>(1 ¯1∘.=⍉IM)+.×⍳≢⎕←IM</string></array><number>0</number>
<array><shape>27</shape><string>sums according to codes XA2</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>16</shape><string>(XA2∘.=XA1)+.×NA</string></array><number>0</number>
<array><shape>33</shape><string>removing duplicate elements (nub)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>18</shape><string>(1 1⍉<\XV∘.=XV)/XV</string></array><number>0</number>
<array><shape>60</shape><string>changing node matrix IM (starts,ends) to a connection matrix</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>16</shape><string>-/(⍳⌈/,IM)∘.=⍉IM</string></array><number>0</number>
<array><shape>43</shape><string>test if all elements of vector BV are equal</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>12</shape><string>∨/^/0 1∘.=BV</string></array><number>0</number>
<array><shape>68</shape><string>test if elements of XM1 belong to corr. row of XM2 (XM1[i;]∊XM2[i;])</string></array>
<array><shape>12</shape><string>≢XM1 ←→ ≢XM2</string></array>
<array><shape>19</shape><string>∨/1 2 1 3⍉XM1∘.=XM2</string></array><number>0</number>
<array><shape>34</shape><string>test if IV is a permutation vector</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>15</shape><string>^/1=+⌿IV∘.=⍳⍴IV</string></array><number>0</number>
<array><shape>39</shape><string>occurrences of string CV1 in string CV2</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>36</shape><string>(^⌿(¯1+⍳⍴CV1)⌽(CV1∘.=CV2),0)/⍳1+⍴CV2</string></array><number>0</number>
<array><shape>50</shape><string>division to IS classes with width NS2, minimum NS1</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>23</shape><string>+/(⍳IS)∘.=⌈(NA-NS1)÷NS2</string></array><number>0</number>
<array><shape>13</shape><string>repeat matrix</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>40</shape><string>(((¯1⌽~A)^A←(¯1↓XV1=1⌽XV1),0)/XV2)∘.=XV2</string></array><number>0</number>
<array><shape>21</shape><string>IS×IS identity matrix</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>(⍳IS)∘.=⍳IS</string></array><number>0</number>
<array><shape>51</shape><string>maxima of elements of subsets of XV specified by BA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>18</shape><string>A+(XV-A←⌊/XV)⌈.×BA</string></array><number>0</number>
<array><shape>34</shape><string>indices of last non-blanks in rows</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>18</shape><string>(' '≠CA)⌈.×⍳¯1↑⍴CA</string></array><number>0</number>
<array><shape>31</shape><string>maximum of NV1 with weights NV2</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>NV2⌈.×NV1</string></array><number>0</number>
<array><shape>31</shape><string>minimum of NV1 with weights NV2</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>NV2⌊.×NV1</string></array><number>0</number>
<array><shape>38</shape><string>extending a distance table to next leg</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>10</shape><string>NM←NM⌊.+NM</string></array><number>0</number>
<array><shape>58</shape><string>a way to combine trigonometric functions (sin NS1 cos NS2)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>13</shape><string>1 2×.○NS1,NS2</string></array><number>0</number>
<array><shape>24</shape><string>sine of a complex number</string></array>
<array><shape>8</shape><string>≢NA ←→ 2</string></array>
<array><shape>18</shape><string>(2 2⍴1 6 2 5)×.○NA</string></array><number>0</number>
<array><shape>43</shape><string>products over subsets of XV specified by BA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>XV×.*BA</string></array><number>0</number>
<array><shape>20</shape><string>sum of squares of NV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>NV+.*2</string></array><number>0</number>
<array><shape>50</shape><string>randomizing random numbers (in ⎕LX in a workspace)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>⎕RL←⎕TS+.*2</string></array><number>0</number>
<array><shape>38</shape><string>extending a transitive binary relation</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>10</shape><string>BM←BM∨.^BM</string></array><number>0</number>
<array><shape>44</shape><string>test if NS is within range [ NM[1;],NM[2;] )</string></array>
<array><shape>8</shape><string>≢NQ ←→ 2</string></array>
<array><shape>7</shape><string>NS<.<NM</string></array><number>0</number>
<array><shape>44</shape><string>test if NS is within range ( NM[1;],NM[2;] ]</string></array>
<array><shape>8</shape><string>≢NQ ←→ 2</string></array>
<array><shape>7</shape><string>NS<.≤NM</string></array><number>0</number>
<array><shape>44</shape><string>test if NA is within range ( NM[1;],NM[2;] ]</string></array>
<array><shape>8</shape><string>≢NQ ←→ 2</string></array>
<array><shape>7</shape><string>NA<.≤NM</string></array><number>0</number>
<array><shape>40</shape><string>test if the elements of NV are ascending</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>NV<.≥1⌽NV</string></array><number>0</number>
<array><shape>50</shape><string>test if IS1 is an integer within range [ IS2,IS3 )</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>21</shape><string>~IS1≤.≥(⌈IS1),IS2,IS3</string></array><number>0</number>
<array><shape>44</shape><string>test if NA is within range ( NM[1;],NM[2;] ]</string></array>
<array><shape>8</shape><string>≢NQ ←→ 2</string></array>
<array><shape>21</shape><string>(NA,[.1+⍴⍴NA]NA)>.>NM</string></array><number>0</number>
<array><shape>31</shape><string>removing trailing blank columns</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>17</shape><string>(⌽∨\⌽' '∨.≠CM)/CM</string></array><number>0</number>
<array><shape>27</shape><string>removing leading blank rows</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>15</shape><string>(∨\CM∨.≠' ')⌿CM</string></array><number>0</number>
<array><shape>30</shape><string>removing leading blank columns</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>15</shape><string>(∨\' '∨.≠CM)/CM</string></array><number>0</number>
<array><shape>54</shape><string>index of first occurrences of rows of XA as rows of XM</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>16</shape><string>⎕IO++⌿^⍀XM∨.≠⍉XA</string></array><number>0</number>
<array><shape>28</shape><string>XM1⍳XM2 for rows of matrices</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>18</shape><string>⎕IO++⌿^⍀XM1∨.≠⍉XM2</string></array><number>0</number>
<array><shape>29</shape><string>removing duplicate blank rows</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>23</shape><string>(A∨1↓1⌽1,A←CM∨.≠' ')⌿CM</string></array><number>0</number>
<array><shape>32</shape><string>removing duplicate blank columns</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>22</shape><string>(A∨1,¯1↓A←' '∨.≠CM)/CM</string></array><number>0</number>
<array><shape>22</shape><string>removing blank columns</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>13</shape><string>(' '∨.≠CM)/CM</string></array><number>0</number>
<array><shape>19</shape><string>removing blank rows</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>13</shape><string>(CM∨.≠' ')⌿CM</string></array><number>0</number>
<array><shape>53</shape><string>test if rows of XA contain elements differing from XS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>XA∨.≠XS</string></array><number>0</number>
<array><shape>28</shape><string>removing trailing blank rows</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>21</shape><string>(-2↑+/^\⌽CM^.=' ')↓CM</string></array><number>0</number>
<array><shape>23</shape><string>removing duplicate rows</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>17</shape><string>(∨⌿<\XM^.=⍉XM)⌿XM</string></array><number>0</number>
<array><shape>23</shape><string>removing duplicate rows</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>19</shape><string>(1 1⍉<\XM^.=⍉XM)⌿XM</string></array><number>0</number>
<array><shape>50</shape><string>test if circular lists are equal (excluding phase)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>29</shape><string>∨/XV2^.=⍉(⍳⍴XV1)⌽(2⍴⍴XV1)⍴XV1</string></array><number>0</number>
<array><shape>43</shape><string>test if all elements of vector BV are equal</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>BV^.=∨/BV</string></array><number>0</number>
<array><shape>43</shape><string>test if all elements of vector BV are equal</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>BV^.=^/BV</string></array><number>0</number>
<array><shape>41</shape><string>rows of matrix XM starting with string XV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>26</shape><string>((((≢XM),⍴XV)↑XM)^.=XV)⌿XM</string></array><number>0</number>
<array><shape>39</shape><string>occurrences of string XV1 in string XV2</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>44</shape><string>((-A)↓XV1^.=(A,1+⍴XV2)⍴XV2)/⍳(⍴XV2)+1-A←⍴XV1</string></array><number>0</number>
<array><shape>38</shape><string>test if vector XV is a row of array XA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>1∊XA^.=XV</string></array><number>0</number>
<array><shape>41</shape><string>comparing vector XV with rows of array XA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>XA^.=XV</string></array><number>0</number>
<array><shape>32</shape><string>word lengths of words in list CA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>8</shape><string>CA+.≠' '</string></array><number>0</number>
<array><shape>46</shape><string>number of occurrences of scalar XS in array XA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>8</shape><string>XS+.=,XA</string></array><number>0</number>
<array><shape>57</shape><string>counting pairwise matches (equal elements) in two vectors</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>XV1+.=XV2</string></array><number>0</number>
<array><shape>44</shape><string>sum of alternating reciprocal series NV2÷NV1</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>NV2-.÷NV1</string></array><number>0</number>
<array><shape>35</shape><string>limits NA to fit in ⍕ field IV[1 2]</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>55</shape><string>(NA⌈1↓A)⌊1↑A←(2 2⍴¯1 1 1 ¯.1)+.×10*(-1↓IV),-/IV+IV>99 0</string></array><number>0</number>
<array><shape>52</shape><string>value of polynomial with coefficients NA at point NS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>18</shape><string>(NS*¯1+⍳⍴NA)+.×⌽NA</string></array><number>0</number>
<array><shape>54</shape><string>arithmetic average (mean value) of NV1 weighted by NV2</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>16</shape><string>(NV2+.×NV1)÷⍴NV1</string></array><number>0</number>
<array><shape>31</shape><string>scalar (dot) product of vectors</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>NV2+.×NV1</string></array><number>0</number>
<array><shape>20</shape><string>sum of squares of NV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>NV+.×NV</string></array><number>0</number>
<array><shape>44</shape><string>summation over subsets of XV specified by BA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>XV+.×BA</string></array><number>0</number>
<array><shape>14</shape><string>matrix product</string></array>
<array><shape>17</shape><string>¯1↑⍴NA1 ←→ 1↑⍴NA2</string></array>
<array><shape>9</shape><string>NA1+.×NA2</string></array><number>0</number>
<array><shape>32</shape><string>sum of reciprocal series NV2÷NV1</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>NV2+.÷NV1</string></array><number>0</number>
<array><shape>59</shape><string>groups of ones in BA2 pointed to by BA1 (or trailing parts)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>28</shape><string>BA2^A=⌈\BA1×A←+\BA2>¯1↓0,BA2</string></array><number>0</number>
<array><shape>51</shape><string>test if NA is in ascending order along direction IS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>17</shape><string>^/[IS]NA=⌈\[IS]NA</string></array><number>0</number>
<array><shape>63</shape><string>duplicating element of XV belonging to BV,1↑XV until next found</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>15</shape><string>XV[1⌈⌈\BV×⍳⍴BV]</string></array><number>0</number>
<array><shape>52</shape><string>test if NA is in descending order along direction IS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>17</shape><string>^/[IS]NA=⌊\[IS]NA</string></array><number>0</number>
<array><shape>55</shape><string>value of Taylor series with coefficients NV at point NS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>19</shape><string>+/NV××\1,NS÷⍳¯1+⍴NV</string></array><number>0</number>
<array><shape>37</shape><string>alternating series (1 ¯1 2 ¯2 3 ¯3 …)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>-\⍳IS</string></array><number>0</number>
<array><shape>21</shape><string>value of saddle point</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>40</shape><string>(<\,(NM=(⍴NM)⍴⌈⌿NM)^NM=⍉(⌽⍴NM)⍴⌊/NM)/,NM</string></array><number>0</number>
<array><shape>45</shape><string>first one (turn off all ones after first one)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string><\BA</string></array><number>0</number>
<array><shape>52</shape><string>not first zero (turn on all zeroes after first zero)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>≤\BA</string></array><number>0</number>
<array><shape>59</shape><string>running parity (≠\) over subvectors of BV2 indicated by BV1</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>33</shape><string>≠\BV2≠BV1\A≠¯1↓0,A←BV1/≠\¯1↓0,BV2</string></array><number>0</number>
<array><shape>38</shape><string>vector (IV[1]⍴1),(IV[2]⍴0),(IV[3]⍴1),…</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>18</shape><string>≠\(⍳+/IV)∊+\⎕IO,IV</string></array><number>0</number>
<array><shape>64</shape><string>not leading zeroes(∨\) in each subvector of BV2 indicated by BV1</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>34</shape><string>≠\(BV2∨BV1)\A≠¯1↓0,A←(BV2∨BV1)/BV2</string></array><number>0</number>
<array><shape>60</shape><string>leading ones (`^\) in each subvector of BV2 indicated by BV1</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>36</shape><string>~≠\(BV2≤BV1)\A≠¯1↓0,A←~(BV2≤BV1)/BV2</string></array><number>0</number>
<array><shape>47</shape><string>locations of texts between and including quotes</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>18</shape><string>A∨¯1↓0,A←≠\CV=''''</string></array><number>0</number>
<array><shape>33</shape><string>locations of texts between quotes</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>18</shape><string>A^¯1↓0,A←≠\CV=''''</string></array><number>0</number>
<array><shape>21</shape><string>joining pairs of ones</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>BA∨≠\BA</string></array><number>0</number>
<array><shape>28</shape><string>places between pairs of ones</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>10</shape><string>(~BA)^≠\BA</string></array><number>0</number>
<array><shape>14</shape><string>running parity</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>≠\BA</string></array><number>0</number>
<array><shape>36</shape><string>removing leading and trailing blanks</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>23</shape><string>((⌽∨\⌽A)^∨\A←' '≠CV)/CV</string></array><number>0</number>
<array><shape>19</shape><string>first group of ones</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>12</shape><string>BA^^\BA=∨\BA</string></array><number>0</number>
<array><shape>31</shape><string>removing trailing blank columns</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>17</shape><string>(⌽∨\⌽∨⌿' '≠CM)/CM</string></array><number>0</number>
<array><shape>24</shape><string>removing trailing blanks</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>15</shape><string>(⌽∨\⌽' '≠CV)/CV</string></array><number>0</number>
<array><shape>23</shape><string>removing leading blanks</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>13</shape><string>(∨\' '≠CV)/CV</string></array><number>0</number>
<array><shape>55</shape><string>not leading zeroes (turn on all zeroes after first one)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>∨\BA</string></array><number>0</number>
<array><shape>46</shape><string>centering character array CA with ragged edges</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>36</shape><string>(A-⌊0.5×(A←+/^\⌽A)++/^\A←' '=⌽CA)⌽CA</string></array><number>0</number>
<array><shape>56</shape><string>decommenting a matrix representation of a function (⎕CR)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>46</shape><string>(∨/A)⌿(⍴CM)⍴(,A)\(,A←^\('⍝'≠CM)∨≠\CM='''')/,CM</string></array><number>0</number>
<array><shape>56</shape><string>centering character array CA with only right edge ragged</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>22</shape><string>(-⌊0.5×+/^\' '=⌽CA)⌽CA</string></array><number>0</number>
<array><shape>16</shape><string>justifying right</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>17</shape><string>(-+/^\⌽' '=CA)⌽CA</string></array><number>0</number>
<array><shape>24</shape><string>removing trailing blanks</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>17</shape><string>(-+/^\⌽' '=CV)↓CV</string></array><number>0</number>
<array><shape>15</shape><string>justifying left</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>15</shape><string>(+/^\' '=CA)⌽CA</string></array><number>0</number>
<array><shape>27</shape><string>editing CV1 with CV2 '-wise</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>57</shape><string>((~(⍴A↑CV1)↑'/'=CV2)/A↑CV1),(1↓A↓CV2),(A←+/^\CV2≠',')↓CV1</string></array><number>0</number>
<array><shape>23</shape><string>removing leading blanks</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>15</shape><string>(+/^\' '=CV)↓CV</string></array><number>0</number>
<array><shape>43</shape><string>indices of first blanks in rows of array CA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>14</shape><string>⎕IO++/^\' '≠CA</string></array><number>0</number>
<array><shape>49</shape><string>leading ones (turn off all ones after first zero)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>^\BA</string></array><number>0</number>
<array><shape>41</shape><string>vector (IV1[1]⍴1),(IV2[1]⍴0),(IV1[2]⍴1),…</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>42</shape><string>(⍳+/IV1,IV2)∊+\1+¯1↓0,((⍳+/IV1)∊+\IV1)\IV2</string></array><number>0</number>
<array><shape>39</shape><string>replicate XV[i] IV[i] times (for all i)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>30</shape><string>((IV≠0)/XV)[+\¯1⌽(⍳+/IV)∊+\IV]</string></array><number>0</number>
<array><shape>59</shape><string>vector (IV2[1]+⍳IV1[1]),(IV2[2]+⍳IV1[2]),(IV2[3]+⍳IV1[3]),…</string></array>
<array><shape>12</shape><string>⍴IV1 ←→ ⍴IV2</string></array>
<array><shape>45</shape><string>⎕IO++\1+((⍳+/IV1)∊+\⎕IO,IV1)\IV2-¯1↓1,IV1+IV2</string></array><number>0</number>
<array><shape>39</shape><string>replicate XV[i] IV[i] times (for all i)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>25</shape><string>XV[+\(⍳+/IV)∊¯1↓1++\0,IV]</string></array><number>0</number>
<array><shape>39</shape><string>replicate XV[i] IV[i] times (for all i)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>26</shape><string>XV[⎕IO++\(⍳+/IV)∊⎕IO++\IV]</string></array><number>0</number>
<array><shape>58</shape><string>cumulative sums (+\) over subvectors of NV indicated by BV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>29</shape><string>+\NV-BV\A-¯1↓0,A←BV/+\¯1↓0,NV</string></array><number>0</number>
<array><shape>46</shape><string>sums over (+/) subvectors of NV, lengths in IV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>21</shape><string>A-¯1↓0,A←(+\NV)[+\IV]</string></array><number>0</number>
<array><shape>25</shape><string>IS first figurate numbers</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>+\+\⍳IS</string></array><number>0</number>
<array><shape>51</shape><string>insert vector for IV[i] zeroes after i:th subvector</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>32</shape><string>(⍳(⍴BV)++/IV)∊+\1+¯1↓0,(1⌽BV)\IV</string></array><number>0</number>
<array><shape>49</shape><string>open a gap of IV1[i] after XV[IV2[i]] (for all i)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>45</shape><string>((⍳(⍴XV)++/IV1)∊+\1+¯1↓0,((⍳⍴XV)∊IV2)\IV1)\XV</string></array><number>0</number>
<array><shape>50</shape><string>open a gap of IV1[i] before XV[IV2[i]] (for all i)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>40</shape><string>((⍳(⍴XV)++/IV1)∊+\1+((⍳⍴XV)∊IV2)\IV1)\XV</string></array><number>0</number>
<array><shape>56</shape><string>changing lengths IV of subvectors to starting indicators</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>33</shape><string>A←(+/IV)⍴0 ⋄ A[+\¯1↓⎕IO,IV]←1 ⋄ A</string></array><number>0</number>
<array><shape>54</shape><string>changing lengths IV of subvectors to ending indicators</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>19</shape><string>(⍳+/IV)∊(+\IV)-~⎕IO</string></array><number>0</number>
<array><shape>56</shape><string>changing lengths IV of subvectors to starting indicators</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>16</shape><string>(⍳+/IV)∊+\⎕IO,IV</string></array><number>0</number>
<array><shape>52</shape><string>insert vector for IV[i] elements before i:th element</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>15</shape><string>(⍳+/A)∊+\A←1+IV</string></array><number>0</number>
<array><shape>47</shape><string>sums over (+/) subvectors of NV indicated by BV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>20</shape><string>A-¯1↓0,A←(1⌽BV)/+\NV</string></array><number>0</number>
<array><shape>39</shape><string>fifo stock NV decremented with NS units</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>20</shape><string>A-¯1↓0,A←0⌈(+\NV)-NS</string></array><number>0</number>
<array><shape>47</shape><string>locations of texts between and including quotes</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>20</shape><string>A∨¯1↓0,A←2|+\CV=''''</string></array><number>0</number>
<array><shape>33</shape><string>locations of texts between quotes</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>20</shape><string>A^¯1↓0,A←2|+\CV=''''</string></array><number>0</number>
<array><shape>53</shape><string>IS:th subvector of XV (subvectors separated by XV[1])</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>19</shape><string>1↓(IS=+\XV=1↑XV)/XV</string></array><number>0</number>
<array><shape>58</shape><string>locating field number IS starting with first element of CV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>17</shape><string>(IS=+\CV=1↑CV)/CV</string></array><number>0</number>
<array><shape>58</shape><string>sum elements of NV1 marked by succeeding identicals in NV2</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>28</shape><string>A-¯1↓0,A←(NV2≠1↓NV2,0)/+\NV1</string></array><number>0</number>
<array><shape>39</shape><string>groups of ones in BV2 pointed to by BV1</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>32</shape><string>BV2^A∊(BV1^BV2)/A←+\BV2>¯1↓0,BV2</string></array><number>0</number>
<array><shape>27</shape><string>ith starting indicators BV1</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>17</shape><string>(+\BV1)∊BV2/⍳⍴BV2</string></array><number>0</number>
<array><shape>50</shape><string>IS:th subvector of XV (subvectors indicated by BV)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>12</shape><string>(IS=+\BV)/XV</string></array><number>0</number>
<array><shape>44</shape><string>running sum of IS consecutive elements of NV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>25</shape><string>((IS-1)↓A)-0,(-IS)↓A←+\NV</string></array><number>0</number>
<array><shape>20</shape><string>depth of parentheses</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>22</shape><string>+\('('=CV)-¯1↓0,')'=CV</string></array><number>0</number>
<array><shape>50</shape><string>starting positions of subvectors having lengths IV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>+\¯1↓⎕IO,IV</string></array><number>0</number>
<array><shape>60</shape><string>changing lengths IV of subvectors of XV to ending indicators</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>18</shape><string>(⍳⍴XV)∊(+\IV)-~⎕IO</string></array><number>0</number>
<array><shape>62</shape><string>changing lengths IV of subvectors of XV to starting indicators</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>15</shape><string>(⍳⍴XV)∊+\⎕IO,IV</string></array><number>0</number>
<array><shape>27</shape><string>IS first triangular numbers</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>+\⍳IS</string></array><number>0</number>
<array><shape>14</shape><string>cumulative sum</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>+\NA</string></array><number>0</number>
<array><shape>35</shape><string>complementary angle (arccos sin NS)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>○/¯2 1,NS</string></array><number>0</number>
<array><shape>32</shape><string>evaluating a two-row determinant</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>10</shape><string>-/×/0 1⊖NM</string></array><number>0</number>
<array><shape>32</shape><string>evaluating a two-row determinant</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>10</shape><string>-/×⌿0 1⌽NM</string></array><number>0</number>
<array><shape>58</shape><string>area of triangle with side lengths in NV (Heron's formula)</string></array>
<array><shape>8</shape><string>3 ←→ ⍴NQ</string></array>
<array><shape>20</shape><string>(×/(+/NV÷2)-0,NV)*.5</string></array><number>0</number>
<array><shape>42</shape><string>juxtapositioning planes of rank 3 array XQ</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>22</shape><string>(×⌿2 2⍴1,⍴XQ)⍴2 1 3⍉XQ</string></array><number>0</number>
<array><shape>45</shape><string>number of rows in array XA (also of a vector)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>8</shape><string>×/¯1↓⍴XA</string></array><number>0</number>
<array><shape>58</shape><string>(Real) solution of quadratic equation with coefficients NV</string></array>
<array><shape>8</shape><string>3 ←→ ⍴NQ</string></array>
<array><shape>48</shape><string>(-NV[2]-¯1 1×((NV[2]*2)-×/4,NV[1 3])*.5)÷2×NV[1]</string></array><number>0</number>
<array><shape>52</shape><string>reshaping planes of rank 3 array to rows of a matrix</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>16</shape><string>(×/2 2⍴1,⍴XQ)⍴XQ</string></array><number>0</number>
<array><shape>44</shape><string>reshaping planes of rank 3 array to a matrix</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>18</shape><string>(×/2 2⍴(⍴XQ),1)⍴XQ</string></array><number>0</number>
<array><shape>37</shape><string>number of elements (also of a scalar)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>×/⍴XA</string></array><number>0</number>
<array><shape>25</shape><string>product of elements of NV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>×/NV</string></array><number>0</number>
<array><shape>19</shape><string>alternating product</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>÷/NA</string></array><number>0</number>
<array><shape>47</shape><string>centering text line CV into a field of width IS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>26</shape><string>IS↑((⌊-/.5×IS,⍴CV)⍴' '),CV</string></array><number>0</number>
<array><shape>15</shape><string>alternating sum</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>-/NA</string></array><number>0</number>
<array><shape>43</shape><string>test if all elements of vector NV are equal</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>(⌈/NV)=⌊/NV</string></array><number>0</number>
<array><shape>31</shape><string>size of range of elements of NV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>(⌈/NV)-⌊/NV</string></array><number>0</number>
<array><shape>51</shape><string>conversion of set of positive integers IV to a mask</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>10</shape><string>(⍳⌈/IV)∊IV</string></array><number>0</number>
<array><shape>51</shape><string>negative infinity; the smallest representable value</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>3</shape><string>⌈/⍬</string></array><number>0</number>
<array><shape>59</shape><string>vectors as column matrices in catenation beneath each other</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>21</shape><string>X,[1+.5×⌈/(⍴⍴X),⍴⍴Y]Y</string></array><number>0</number>
<array><shape>53</shape><string>vectors as row matrices in catenation upon each other</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>19</shape><string>X,[.5×⌈/(⍴⍴X),⍴⍴Y]Y</string></array><number>0</number>
<array><shape>42</shape><string>quick membership (∊) for positive integers</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>35</shape><string>A←(⌈/IV1,IV2)⍴0 ⋄ A[IV2]←1 ⋄ A[IV1]</string></array><number>0</number>
<array><shape>51</shape><string>positive maximum, at least zero (also for empty NV)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>⌈/NV,0</string></array><number>0</number>
<array><shape>25</shape><string>maximum of elements of NV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>⌈/NV</string></array><number>0</number>
<array><shape>50</shape><string>positive infinity; the largest representable value</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>3</shape><string>⌊/⍬</string></array><number>0</number>
<array><shape>25</shape><string>minimum of elements of NV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>⌊/NV</string></array><number>0</number>
<array><shape>43</shape><string>test if all elements of vector BV are equal</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>8</shape><string>⍲/0 1∊BV</string></array><number>0</number>
<array><shape>43</shape><string>test if all elements of vector BV are equal</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>12</shape><string>(^/BV)∨~∨/BV</string></array><number>0</number>
<array><shape>43</shape><string>test if all elements of vector BV are equal</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>(^/BV)=∨/BV</string></array><number>0</number>
<array><shape>43</shape><string>test if all elements of vector BV are equal</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>^/BV÷∨/BV</string></array><number>0</number>
<array><shape>46</shape><string>removing duplicate rows from ordered matrix XM</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>24</shape><string>(¯1⌽1↓(∨/XM≠¯1⊖XM),1)⌿XM</string></array><number>0</number>
<array><shape>41</shape><string>vector having as many ones as XM has rows</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>∨/0/XM</string></array><number>0</number>
<array><shape>41</shape><string>test if XA and XV have elements in common</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>∨/XV∊XA</string></array><number>0</number>
<array><shape>13</shape><string>none, neither</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>~∨/BA</string></array><number>0</number>
<array><shape>11</shape><string>any, anyone</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>∨/BA</string></array><number>0</number>
<array><shape>43</shape><string>test if all elements of vector BV are equal</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>8</shape><string>≠/0 1∊BV</string></array><number>0</number>
<array><shape>6</shape><string>parity</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>≠/BA</string></array><number>0</number>
<array><shape>39</shape><string>number of areas intersecting areas in X</string></array>
<array><shape>20</shape><string>⍴NQ ←→ (n × 2 × dim)</string></array>
<array><shape>37</shape><string>+/A^⍉A←^/X[;A⍴1;]≤2 1 3⍉X[;(A←≢X)⍴2;]</string></array><number>0</number>
<array><shape>43</shape><string>test if all elements of vector BV are equal</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>^/BV/1⌽BV</string></array><number>0</number>
<array><shape>29</shape><string>comparison of successive rows</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>^/XM=1⊖XM</string></array><number>0</number>
<array><shape>43</shape><string>test if all elements of vector XV are equal</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>^/XV=1⌽XV</string></array><number>0</number>
<array><shape>30</shape><string>test if CV is a valid APL name</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>¯1≠⎕NC CV</string></array><number>0</number>
<array><shape>43</shape><string>test if all elements of vector XV are equal</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>^/XV=1↑XV</string></array><number>0</number>
<array><shape>20</shape><string>identity of two sets</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>19</shape><string>^/(XV1∊XV2),XV2∊XV1</string></array><number>0</number>
<array><shape>34</shape><string>test if IV is a permutation vector</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>^/(⍳⍴IV)∊IV</string></array><number>0</number>
<array><shape>43</shape><string>test if all elements of vector BV are equal</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>~^/BV∊~BV</string></array><number>0</number>
<array><shape>21</shape><string>test if XA is boolean</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>^/,XA∊0 1</string></array><number>0</number>
<array><shape>38</shape><string>test if XV is a subset of XA (XV ⊂ XA)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>^/XV∊XA</string></array><number>0</number>
<array><shape>43</shape><string>test if arrays of equal shape are identical</string></array>
<array><shape>12</shape><string>⍴XA1 ←→ ⍴XA2</string></array>
<array><shape>10</shape><string>^/,XA1=XA2</string></array><number>0</number>
<array><shape>43</shape><string>test if all elements of vector XV are equal</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>10</shape><string>^/XV=XV[1]</string></array><number>0</number>
<array><shape>10</shape><string>blank rows</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>8</shape><string>^/' '=CM</string></array><number>0</number>
<array><shape>9</shape><string>all, both</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>^/BA</string></array><number>0</number>
<array><shape>24</shape><string>standard deviation of NV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>30</shape><string>((+/(NV-(+/NV)÷⍴NV)*2)÷⍴NV)*.5</string></array><number>0</number>
<array><shape>17</shape><string>Y:th moment of NV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>25</shape><string>(+/(NV-(+/NV)÷⍴NV)*Y)÷⍴NV</string></array><number>0</number>
<array><shape>27</shape><string>variance (dispersion) of NV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>25</shape><string>(+/(NV-(+/NV)÷⍴NV)*2)÷⍴NV</string></array><number>0</number>
<array><shape>56</shape><string>arithmetic average (mean value), also for an empty array</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>14</shape><string>(+/,NA)÷1⌈⍴,NA</string></array><number>0</number>
<array><shape>43</shape><string>test if all elements of vector BV are equal</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>12</shape><string>0=(⍴BV)|+/BV</string></array><number>0</number>
<array><shape>44</shape><string>average (mean value) of columns of matrix NM</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>16</shape><string>(+⌿NM)÷1↑(⍴NM),1</string></array><number>0</number>
<array><shape>41</shape><string>average (mean value) of rows of matrix NM</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>15</shape><string>(+/NM)÷¯1↑1,⍴NM</string></array><number>0</number>
<array><shape>46</shape><string>number of occurrences of scalar XS in array XA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>8</shape><string>+/XS=,XA</string></array><number>0</number>
<array><shape>57</shape><string>average (mean value) of elements of NA along direction IS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>20</shape><string>(+/[IS]NA)÷(⍴NA)[IS]</string></array><number>0</number>
<array><shape>31</shape><string>arithmetic average (mean value)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>10</shape><string>(+/NV)÷⍴NV</string></array><number>0</number>
<array><shape>32</shape><string>resistance of parallel resistors</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>÷+/÷NV</string></array><number>0</number>
<array><shape>21</shape><string>sum of elements of NV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>+/NV</string></array><number>0</number>
<array><shape>19</shape><string>row sum of a matrix</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>+/NM</string></array><number>0</number>
<array><shape>22</shape><string>column sum of a matrix</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>+⌿NM</string></array><number>0</number>
<array><shape>45</shape><string>reshaping one-element vector XV into a scalar</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>+/XV</string></array><number>0</number>
<array><shape>42</shape><string>number of elements satisfying condition BV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>+/BV</string></array><number>0</number>
<array><shape>29</shape><string>scan from end with function ⍺</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>⌽⍺\⌽XA</string></array><number>0</number>
<array><shape>36</shape><string>the index of positive integers in IV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>37</shape><string>A←9999⍴⎕IO+⍴IV ⋄ A[⌽IV]←⌽⍳⍴IV ⋄ A[IA]</string></array><number>0</number>
<array><shape>54</shape><string>'Transpose' of matrix XM with column fields of width Y</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>37</shape><string>((⌽A)×1,Y)⍴2 1 3⍉(1⌽Y,A←(⍴XM)÷1,Y)⍴XM</string></array><number>0</number>
<array><shape>30</shape><string>adding NV to each column of NA</string></array>
<array><shape>10</shape><string>≢NQ ←→ ≢NA</string></array>
<array><shape>13</shape><string>NA+⍉(⌽⍴NA)⍴NV</string></array><number>0</number>
<array><shape>45</shape><string>matrix with shape of XM and XV as its columns</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>10</shape><string>⍉(⌽⍴XM)⍴XV</string></array><number>0</number>
<array><shape>25</shape><string>derivate of polynomial NV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>14</shape><string>¯1↓NV×⌽¯1+⍳⍴NV</string></array><number>0</number>
<array><shape>33</shape><string>reverse vector XV on condition BS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>20</shape><string>,⌽[⎕IO+BS](1,⍴XV)⍴XV</string></array><number>0</number>
<array><shape>44</shape><string>reshaping vector XV into a one-column matrix</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>(⌽1,⍴XV)⍴XV</string></array><number>0</number>
<array><shape>56</shape><string>avoiding parentheses by swapping arguments of FUNCTION F</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>8</shape><string>(1 F⍨ …)</string></array><number>0</number>
<array><shape>33</shape><string>vector (cross) product of vectors</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>31</shape><string>((1⌽NA1)×¯1⌽NA2)-(¯1⌽NA1)×1⌽NA2</string></array><number>0</number>
<array><shape>23</shape><string>a magic square, side IS</string></array>
<array><shape>6</shape><string>1=2|IS</string></array>
<array><shape>32</shape><string>A⊖(A←(⍳IS)-⌈IS÷2)⌽(IS,IS)⍴⍳IS×IS</string></array><number>0</number>
<array><shape>42</shape><string>removing duplicates from an ordered vector</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>22</shape><string>(¯1⌽1↓(XV≠¯1⌽XV),1)/XV</string></array><number>0</number>
<array><shape>27</shape><string>an expression giving itself</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>22</shape><string>1⌽22⍴11⍴'''1⌽22⍴11⍴'''</string></array><number>0</number>
<array><shape>35</shape><string>transpose matrix XM on condition BS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>(BS⌽1 2)⍉XM</string></array><number>0</number>
<array><shape>63</shape><string>any element true (∨/) on each subvector of BV2 indicated by BV1</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>29</shape><string>(BV1/BV2)≥A/1⌽A←(BV2∨BV1)/BV1</string></array><number>0</number>
<array><shape>64</shape><string>all elements true (^/) on each subvector of BV2 indicated by BV1</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>29</shape><string>(BV1/BV2)^A/1⌽A←(BV2≤BV1)/BV1</string></array><number>0</number>
<array><shape>44</shape><string>removing leading, multiple and trailing XS's</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>22</shape><string>(1↑A)↓(A⍲1⌽A←XS=XV)/XV</string></array><number>0</number>
<array><shape>56</shape><string>changing starting indicators BV of subvectors to lengths</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>20</shape><string>A-¯1↓0,A←(1⌽BV)/⍳⍴BV</string></array><number>0</number>
<array><shape>41</shape><string>(Cyclic) compression of successive blanks</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>17</shape><string>(A∨1⌽A←CV≠' ')/CV</string></array><number>0</number>
<array><shape>42</shape><string>aligning columns of matrix XM to diagonals</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>14</shape><string>(1-⍳¯1↑⍴XM)⌽XM</string></array><number>0</number>
<array><shape>42</shape><string>aligning diagonals of matrix XM to columns</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>15</shape><string>(¯1+⍳¯1↑⍴XM)⌽XM</string></array><number>0</number>
<array><shape>35</shape><string>diagonal matrix with elements of NV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>27</shape><string>0 ¯1↓(-⍳⍴NV)⌽((2⍴⍴NV)⍴0),NV</string></array><number>0</number>
<array><shape>57</shape><string>test if elements differ from previous ones (non-empty XV)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>12</shape><string>1,1↓XV≠¯1⌽XV</string></array><number>0</number>
<array><shape>53</shape><string>test if elements differ from next ones (non-empty XV)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>14</shape><string>(¯1↓XV≠1⌽XV),1</string></array><number>0</number>
<array><shape>37</shape><string>replacing first element of XV with XS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>10</shape><string>¯1⌽1↓XV,XS</string></array><number>0</number>
<array><shape>36</shape><string>replacing last element of XV with XS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>10</shape><string>1⌽¯1↓XS,XV</string></array><number>0</number>
<array><shape>45</shape><string>ending points for XV in indices pointed by IV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>1⌽(⍳⍴XV)∊IV</string></array><number>0</number>
<array><shape>40</shape><string>leftmost neighboring elements cyclically</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>¯1⌽XA</string></array><number>0</number>
<array><shape>41</shape><string>rightmost neighboring elements cyclically</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>1⌽XA</string></array><number>0</number>
<array><shape>42</shape><string>applying to columns action defined on rows</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>⍉ … ⍉XV</string></array><number>0</number>
<array><shape>47</shape><string>retrieving scattered elements IM from matrix XM</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>21</shape><string>1 1⍉XM[IM[1;];IM[2;]]</string></array><number>0</number>
<array><shape>55</shape><string>successive transposes of XA (IV1 after IV2: IV1⍉IV2⍉XA)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>IV1[IV2]⍉XA</string></array><number>0</number>
<array><shape>26</shape><string>major diagonal of array XA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>10</shape><string>(1*⍴XA)⍉XA</string></array><number>0</number>
<array><shape>56</shape><string>reshaping a 400×12 character matrix to fit into one page</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>24</shape><string>40 120⍴2 1 3⍉10 40 12⍴CM</string></array><number>0</number>
<array><shape>41</shape><string>transpose of planes of a rank three array</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>8</shape><string>1 3 2⍉XQ</string></array><number>0</number>
<array><shape>27</shape><string>major diagonal of matrix XM</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>1 1⍉XM</string></array><number>0</number>
<array><shape>56</shape><string>selecting specific elements from a 'large' outer product</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>12</shape><string>IV⍉XA1∘.⍺XA2</string></array><number>0</number>
<array><shape>45</shape><string>test for antisymmetricity of square matrix NM</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>10</shape><string>~0∊NM=-⍉NM</string></array><number>0</number>
<array><shape>41</shape><string>test for symmetricity of square matrix XM</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>~0∊XM=⍉XM</string></array><number>0</number>
<array><shape>25</shape><string>matrix with IS columns NV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>12</shape><string>⍉(IS,⍴NV)⍴NV</string></array><number>0</number>
<array><shape>46</shape><string>limiting NA between NV[1] and NV[2], inclusive</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>14</shape><string>NV[1]⌈NV[2]⌊NA</string></array><number>0</number>
<array><shape>43</shape><string>inserting vector XV to the end of matrix XM</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>31</shape><string>(A↑XM),[⍳1](1↓A←(⍴XM)⌈0,⍴XV)↑XV</string></array><number>0</number>
<array><shape>45</shape><string>widening matrix XM1 to be compatible with XM2</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>21</shape><string>((0 1×⍴XM2)⌈⍴XM1)↑XM1</string></array><number>0</number>
<array><shape>48</shape><string>lengthening matrix XM1 to be compatible with XM2</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>21</shape><string>((1 0×⍴XM2)⌈⍴XM1)↑XM1</string></array><number>0</number>
<array><shape>53</shape><string>reshaping non-empty lower-rank array XA into a matrix</string></array>
<array><shape>6</shape><string>2≥⍴⍴XA</string></array>
<array><shape>13</shape><string>(1⌈¯2↑⍴XA)⍴XA</string></array><number>0</number>
<array><shape>35</shape><string>take of at most IA elements from XA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>(IA⌊⍴XA)↑XA</string></array><number>0</number>
<array><shape>46</shape><string>limiting indices and giving a default value XS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>19</shape><string>(XV,XS)[(1+⍴XV)⌊IA]</string></array><number>0</number>
<array><shape>38</shape><string>reshaping NA into a matrix of width IS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>20</shape><string>((⌈(⍴,NA)÷IS),IS)⍴NA</string></array><number>0</number>
<array><shape>32</shape><string>rounding to nearest even integer</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>10</shape><string>⌊NA+1≤2|NA</string></array><number>0</number>
<array><shape>48</shape><string>rounding, to nearest even integer for .5 = 1||NA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>14</shape><string>⌊NA+.5×.5≠2|NA</string></array><number>0</number>
<array><shape>48</shape><string>rounding, to nearest even integer for .5 = 1||NA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>14</shape><string>⌊NA+.5×.5≠2|NA</string></array><number>0</number>
<array><shape>52</shape><string>arithmetic progression from NS1 to NS2 with step NS3</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>43</shape><string>NS1+(NS3××NS2-NS1)×(⍳1+|⌊(NS2-NS1)÷NS3)-⎕IO</string></array><number>0</number>
<array><shape>47</shape><string>centering text line CV into a field of width IS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>16</shape><string>(-⌊.5×IS+⍴CV)↑CV</string></array><number>0</number>
<array><shape>15</shape><string>test if integer</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>NA=⌊NA</string></array><number>0</number>
<array><shape>41</shape><string>rounding currencies to nearest 5 subunits</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>14</shape><string>.05×⌊.5+NA÷.05</string></array><number>0</number>
<array><shape>31</shape><string>first part of numeric code ABBB</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>8</shape><string>⌊IA÷1000</string></array><number>0</number>
<array><shape>23</shape><string>rounding to IA decimals</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>22</shape><string>(10*-IA)×⌊0.5+NA×10*IA</string></array><number>0</number>
<array><shape>29</shape><string>rounding to nearest hundredth</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>16</shape><string>0.01×⌊0.5+100×NA</string></array><number>0</number>
<array><shape>27</shape><string>rounding to nearest integer</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>⌊0.5+NA</string></array><number>0</number>
<array><shape>49</shape><string>demote floating point representations to integers</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>3</shape><string>⌊IA</string></array><number>0</number>
<array><shape>25</shape><string>test if IA is a leap year</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>28</shape><string>(0=400|IA)∨(0≠100|IA)^0=4|IA</string></array><number>0</number>
<array><shape>7</shape><string>framing</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>26</shape><string>'_',[1]('|',CM,'|'),[1]'¯'</string></array><number>0</number>
<array><shape>28</shape><string>magnitude of fractional part</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>1||NA</string></array><number>0</number>
<array><shape>25</shape><string>fractional part with sign</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>8</shape><string>(×NA)|NA</string></array><number>0</number>
<array><shape>48</shape><string>increasing the dimension of XV to multiple of IS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>17</shape><string>XV,(IS|-⍴XV)↑0/XV</string></array><number>0</number>
<array><shape>34</shape><string>removing every IS:th element of XV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>14</shape><string>(0≠IS|⍳⍴XV)/XV</string></array><number>0</number>
<array><shape>32</shape><string>taking every IS:th element of XV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>14</shape><string>(0=IS|⍳⍴XV)/XV</string></array><number>0</number>
<array><shape>14</shape><string>divisors of IS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>14</shape><string>(0=A|IS)/A←⍳IS</string></array><number>0</number>
<array><shape>35</shape><string>removing every second element of XV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>(2|⍳⍴XV)/XV</string></array><number>0</number>
<array><shape>29</shape><string>elements of NV divisible by Y</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>(0=Y|NV)/NV</string></array><number>0</number>
<array><shape>54</shape><string>ravel of a matrix to IV[1] columns with a gap of IV[2]</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>46</shape><string>(A×IV[1]*¯1 1)⍴(A←(⍴XM)+(IV[1]|-≢XM),IV[2])↑XM</string></array><number>0</number>
<array><shape>12</shape><string>test if even</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>~2|IA</string></array><number>0</number>
<array><shape>30</shape><string>last part of numeric code ABBB</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>1000|IA</string></array><number>0</number>
<array><shape>15</shape><string>fractional part</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>1|NA</string></array><number>0</number>
<array><shape>48</shape><string>increasing absolute value without change of sign</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>15</shape><string>(×NA1)×NA2+|NA1</string></array><number>0</number>
<array><shape>44</shape><string>rounding to zero values of NA1 close to zero</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>12</shape><string>NA1×NA2≤|NA1</string></array><number>0</number>
<array><shape>47</shape><string>square of elements of NA without change of sign</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>NA×|NA</string></array><number>0</number>
<array><shape>28</shape><string>choosing according to signum</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>XV[2+×NA]</string></array><number>0</number>
<array><shape>61</shape><string>not first zero (≤\) in each subvector of BV2 indicated by BV1</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>40</shape><string>~(B^BV1)∨(B∨BV1)\A>¯1↓0,A←(B∨BV1)/B←~BV2</string></array><number>0</number>
<array><shape>56</shape><string>first one (<\) in each subvector of BV2 indicated by BV1</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>42</shape><string>(BV2^BV1)∨(BV2∨BV1)\A>¯1↓0,A←(BV2∨BV1)/BV2</string></array><number>0</number>
<array><shape>53</shape><string>replacing elements of XS in set XV with blanks/zeroes</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>15</shape><string>A\(A←~XS∊XV)/XS</string></array><number>0</number>
<array><shape>57</shape><string>replacing elements of XV not in set XA with blanks/zeroes</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>14</shape><string>A\(A←XV∊XA)/XV</string></array><number>0</number>
<array><shape>46</shape><string>merging XV1 and XV2 under control of BV (mesh)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>32</shape><string>A←BV\XV1 ⋄ A[(~BV)/⍳⍴BV]←XV2 ⋄ A</string></array><number>0</number>
<array><shape>61</shape><string>replacing elements of XA not satisfying BV with blanks/zeroes</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>8</shape><string>BV\BV/XA</string></array><number>0</number>
<array><shape>41</shape><string>adding an empty row into XM after rows IV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>28</shape><string>(~(⍳(⍴IV)+1⍴⍴XM)∊IV+⍳⍴IV)⍀XM</string></array><number>0</number>
<array><shape>15</shape><string>test if numeric</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>8</shape><string>0∊0\0⍴XV</string></array><number>0</number>
<array><shape>40</shape><string>adding an empty row into XM after row IS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>20</shape><string>((IS+1)≠⍳1+1⍴⍴XM)⍀XM</string></array><number>0</number>
<array><shape>17</shape><string>underlining words</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>23</shape><string>CV,[⎕IO-.1](' '≠CV)\'¯'</string></array><number>0</number>
<array><shape>39</shape><string>using boolean matrix BM in expanding XV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>14</shape><string>(⍴BM)⍴(,BM)\XV</string></array><number>0</number>
<array><shape>16</shape><string>spacing out text</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>16</shape><string>((2×⍴CV)⍴1 0)\CV</string></array><number>0</number>
<array><shape>31</shape><string>lengths of groups of ones in BV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>36</shape><string>(A>0)/A←(1↓A)-1+¯1↓A←(~A)/⍳⍴A←0,BV,0</string></array><number>0</number>
<array><shape>34</shape><string>syllabization of a Finnish word XV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>41</shape><string>(~A∊1,⍴XV)/A←A/⍳⍴A←(1↓A,0)←~XV∊'aeiouyäö'</string></array><number>0</number>
<array><shape>47</shape><string>choosing a string according to boolean value BS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>18</shape><string>(BS/CV1),(~BS)/CV2</string></array><number>0</number>
<array><shape>46</shape><string>removing leading, multiple and trailing blanks</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>32</shape><string>(' '=1↑CV)↓((1↓A,0)∨A←' '≠CV)/CV</string></array><number>0</number>
<array><shape>33</shape><string>removing columns IV from array XA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>18</shape><string>(~(⍳¯1↑⍴XA)∊IV)/XA</string></array><number>0</number>
<array><shape>24</shape><string>removing trailing blanks</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>21</shape><string>(¯1↑(' '≠CV)/⍳⍴CV)⍴CV</string></array><number>0</number>
<array><shape>49</shape><string>lengths of subvectors of XV having equal elements</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>37</shape><string>(1↓A)-¯1↓A←(A,1)/⍳1+⍴A←1,(1↓XV)≠¯1↓XV</string></array><number>0</number>
<array><shape>48</shape><string>field lengths of vector XV; IV ←→ ending indices</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>41</shape><string>IV-¯1↓0,IV←(~⎕IO)+(((1↓XV)≠¯1↓XV),1)/⍳⍴XV</string></array><number>0</number>
<array><shape>37</shape><string>removing multiple and trailing blanks</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>21</shape><string>((1↓A,0)∨A←' '≠CV)/CV</string></array><number>0</number>
<array><shape>36</shape><string>removing leading and multiple blanks</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>20</shape><string>(A∨¯1↓0,A←' '≠CV)/CV</string></array><number>0</number>
<array><shape>24</shape><string>removing multiple blanks</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>20</shape><string>(A∨¯1↓1,A←' '≠CV)/CV</string></array><number>0</number>
<array><shape>38</shape><string>removing duplicate XS's from vector XV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>19</shape><string>(A∨¯1↓1,A←XV≠XS)/XV</string></array><number>0</number>
<array><shape>50</shape><string>indices of all occurrences of elements of XA in XV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>12</shape><string>(XV∊XA)/⍳⍴XV</string></array><number>0</number>
<array><shape>16</shape><string>union of sets, ?</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>18</shape><string>XV2,(~XV1∊XV2)/XV1</string></array><number>0</number>
<array><shape>45</shape><string>elements of XV not in XA (difference of sets)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>(~XV∊XA)/XV</string></array><number>0</number>
<array><shape>59</shape><string>rows of non-empty matrix XM starting with a character in XV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>14</shape><string>(XM[;1]∊XV)⌿XM</string></array><number>0</number>
<array><shape>23</shape><string>intersection of sets, ⍞</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>10</shape><string>(XV∊XA)/XV</string></array><number>0</number>
<array><shape>57</shape><string>reduction with function ⍺ in dimension IS, rank unchanged</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>26</shape><string>((⍴XA)*IS≠⍳⍴⍴XA)⍴ ⍺/[IS]XA</string></array><number>0</number>
<array><shape>39</shape><string>replacing all values XS1 in XA with XS2</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>32</shape><string>A[(A=XS1)/⍳⍴A←,XA]←XS2 ⋄ (⍴XA)⍴A</string></array><number>0</number>
<array><shape>38</shape><string>indices of all occurrences of XS in XV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>12</shape><string>(XS=XV)/⍳⍴XV</string></array><number>0</number>
<array><shape>46</shape><string>replacing elements of XV satisfying BV with XS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>14</shape><string>XV[BV/⍳⍴XV]←XS</string></array><number>0</number>
<array><shape>42</shape><string>removing duplicates from positive integers</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>28</shape><string>A←9999⍴0 ⋄ A[IV]←1 ⋄ A/⍳9999</string></array><number>0</number>
<array><shape>36</shape><string>indices of ones in logical vector BV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>BV/⍳⍴BV</string></array><number>0</number>
<array><shape>19</shape><string>conditional in text</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>22</shape><string>((~BS)/'IN'),'CORRECT'</string></array><number>0</number>
<array><shape>15</shape><string>removing blanks</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>(' '≠XV)/XV</string></array><number>0</number>
<array><shape>35</shape><string>removing elements XS from vector XV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>10</shape><string>(XV≠XS)/XV</string></array><number>0</number>
<array><shape>51</shape><string>vector to expand a new element after each one in BV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>25</shape><string>(,BV,[1.5]1)/,BV,[1.5]~BV</string></array><number>0</number>
<array><shape>50</shape><string>reduction with FUNCTION ⍺ without respect to shape</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>⍺/,NA</string></array><number>0</number>
<array><shape>45</shape><string>reshaping scalar XA into a one-element vector</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>1/XA</string></array><number>0</number>
<array><shape>12</shape><string>empty matrix</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>0⌿XM</string></array><number>0</number>
<array><shape>48</shape><string>selecting elements of XA satisfying condition BV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>BV/XA</string></array><number>0</number>
<array><shape>47</shape><string>inserting vector XV into matrix XM after row IS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>37</shape><string>XM[⍳IS;],[1]((1↓⍴XM)↑XV),[1](2↑IS)↓XM</string></array><number>0</number>
<array><shape>47</shape><string>filling XV with last element of XV to length IS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>14</shape><string>IS↑XV,IS⍴¯1↑XV</string></array><number>0</number>
<array><shape>33</shape><string>input of row IS of text matrix CM</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>15</shape><string>CM[IS;]←(≢CM)↑⍞</string></array><number>0</number>
<array><shape>28</shape><string>first ones in groups of ones</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>20</shape><string>BA>((-⍴⍴BA)↑¯1)↓0,BA</string></array><number>0</number>
<array><shape>37</shape><string>inserting XV1 into XV2 after index IS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>19</shape><string>(IS↑XV2),XV1,IS↓XV2</string></array><number>0</number>
<array><shape>58</shape><string>pairwise differences of successive columns (inverse of +\)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>20</shape><string>NA-((-⍴⍴NA)↑¯1)↓0,NA</string></array><number>0</number>
<array><shape>29</shape><string>leftmost neighboring elements</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>17</shape><string>((-⍴⍴NA)↑¯1)↓0,NA</string></array><number>0</number>
<array><shape>30</shape><string>rightmost neighboring elements</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>16</shape><string>((-⍴⍴NA)↑1)↓NA,0</string></array><number>0</number>
<array><shape>47</shape><string>shifting vector XV right with IS without rotate</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>15</shape><string>(-⍴XV)↑(-IS)↓XV</string></array><number>0</number>
<array><shape>46</shape><string>shifting vector XV left with IS without rotate</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>(⍴XV)↑IS↓XV</string></array><number>0</number>
<array><shape>36</shape><string>drop of IS first rows from matrix XM</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>(2↑IS)↓XM</string></array><number>0</number>
<array><shape>15</shape><string>test if numeric</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>8</shape><string>0∊1↑0⍴XA</string></array><number>0</number>
<array><shape>53</shape><string>reshaping non-empty lower-rank array XA into a matrix</string></array>
<array><shape>6</shape><string>2≥⍴⍴XA</string></array>
<array><shape>15</shape><string>(¯2↑1 1,⍴XA)⍴XA</string></array><number>0</number>
<array><shape>42</shape><string>giving a character default value for input</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>1↑⍞,CS</string></array><number>0</number>
<array><shape>38</shape><string>adding scalar NS to last element of NA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>12</shape><string>NA+(-⍴NA)↑NS</string></array><number>0</number>
<array><shape>27</shape><string>number of rows in matrix XM</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>3</shape><string>≢XM</string></array><number>0</number>
<array><shape>30</shape><string>number of columns in matrix XM</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>¯1↑⍴XM</string></array><number>0</number>
<array><shape>41</shape><string>ending points for IS1 fields of width IS2</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>18</shape><string>(IS1×IS2)⍴(-IS2)↑1</string></array><number>0</number>
<array><shape>43</shape><string>starting points for IS1 fields of width IS2</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>15</shape><string>(IS1×IS2)⍴IS2↑1</string></array><number>0</number>
<array><shape>56</shape><string>zero or space depending on the type of XA (fill element)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>1↑0⍴XA</string></array><number>0</number>
<array><shape>44</shape><string>forming first row of a matrix to be expanded</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>10</shape><string>1 80⍴80↑XV</string></array><number>0</number>
<array><shape>63</shape><string>vector of length IS2 with IS1 ones on the left, the rest zeroes</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>IS2↑IS1⍴1</string></array><number>0</number>
<array><shape>53</shape><string>justifying text CV to right edge of field of width IS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>8</shape><string>(-IS)↑CV</string></array><number>0</number>
<array><shape>58</shape><string>starting points of groups of equal elements (non-empty XV)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>14</shape><string>1,(1↓XV)≠¯1↓XV</string></array><number>0</number>
<array><shape>56</shape><string>ending points of groups of equal elements (non-empty XV)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>16</shape><string>((1↓XV)≠¯1↓XV),1</string></array><number>0</number>
<array><shape>51</shape><string>pairwise ratios of successive elements of vector NV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>12</shape><string>(1↓NV)÷¯1↓NV</string></array><number>0</number>
<array><shape>56</shape><string>pairwise differences of successive elements of vector NV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>12</shape><string>(1↓NV)-¯1↓NV</string></array><number>0</number>
<array><shape>59</shape><string>differences of successive elements of NA along direction IS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>23</shape><string>NA-(-IS=⍳⍴⍴NA)↓0,[IS]NA</string></array><number>0</number>
<array><shape>60</shape><string>ascending series of integers IS2…IS1 (for small IS2 and IS1)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>12</shape><string>(IS2-1)↓⍳IS1</string></array><number>0</number>
<array><shape>28</shape><string>first ones in groups of ones</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>10</shape><string>BV>¯1↓0,BV</string></array><number>0</number>
<array><shape>27</shape><string>last ones in groups of ones</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>BV>1↓BV,0</string></array><number>0</number>
<array><shape>33</shape><string>list of names in CM (one per row)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>1↓,',',CM</string></array><number>0</number>
<array><shape>49</shape><string>selection of XS1 or XS2 depending on condition BS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>13</shape><string>''⍴BS↓XS1,XS2</string></array><number>0</number>
<array><shape>52</shape><string>restoring argument of cumulative sum (inverse of +\)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>10</shape><string>NV-¯1↓0,NV</string></array><number>0</number>
<array><shape>36</shape><string>drop of IS first rows from matrix XM</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>(IS,0)↓XM</string></array><number>0</number>
<array><shape>39</shape><string>drop of IS first columns from matrix XM</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>(0,IS)↓XM</string></array><number>0</number>
<array><shape>27</shape><string>number of rows in matrix XM</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>¯1↓⍴XM</string></array><number>0</number>
<array><shape>30</shape><string>number of columns in matrix XM</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>1↓⍴XM</string></array><number>0</number>
<array><shape>45</shape><string>conditional drop of IV elements from array XA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>10</shape><string>(IV×BV)↓XA</string></array><number>0</number>
<array><shape>38</shape><string>conditional drop of last element of XV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>8</shape><string>(-BS)↓XV</string></array><number>0</number>
<array><shape>43</shape><string>expansion vector with zero after indices IV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>21</shape><string>~(⍳(⍴IV)+⍴XV)∊IV+⍳⍴IV</string></array><number>0</number>
<array><shape>55</shape><string>boolean vector of length IS with zeroes in locations IA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>(~(⍳IS)∊IA)</string></array><number>0</number>
<array><shape>47</shape><string>starting points for XV in indices pointed by IV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>(⍳⍴XV)∊IV</string></array><number>0</number>
<array><shape>53</shape><string>boolean vector of length IS with ones in locations IA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>8</shape><string>(⍳IS)∊IA</string></array><number>0</number>
<array><shape>29</shape><string>check for input in range 1…XA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>(A←⎕)∊⍳XA</string></array><number>0</number>
<array><shape>28</shape><string>test if arrays are identical</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>10</shape><string>~0∊XA1=XA2</string></array><number>0</number>
<array><shape>49</shape><string>zeroing elements of NA1 depending on their values</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>12</shape><string>NA1×~NA1∊NA2</string></array><number>0</number>
<array><shape>24</shape><string>test if single or scalar</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>1∊⍴,XA</string></array><number>0</number>
<array><shape>14</shape><string>test if vector</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>1∊⍴⍴XA</string></array><number>0</number>
<array><shape>28</shape><string>test if XA is an empty array</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>0∊⍴XA</string></array><number>0</number>
<array><shape>23</shape><string>inverting a permutation</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>20</shape><string>A←⍳⍴IV ⋄ A[IV]←A ⋄ A</string></array><number>0</number>
<array><shape>20</shape><string>all axes of array XA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>⍳⍴⍴XA</string></array><number>0</number>
<array><shape>24</shape><string>all indices of vector XV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>⍳⍴XV</string></array><number>0</number>
<array><shape>60</shape><string>arithmetic progression of NS2 numbers from NS1 with step NS3</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>18</shape><string>NS1+NS3×(⍳NS2)-⎕IO</string></array><number>0</number>
<array><shape>61</shape><string>consecutive integers from IS1 to IS2 (arithmetic progression)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>20</shape><string>(IS1-⎕IO)+⍳1+IS2-IS1</string></array><number>0</number>
<array><shape>20</shape><string>empty numeric vector</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>1</shape><string>⍬</string></array><number>0</number>
<array><shape>30</shape><string>index origin (⎕IO) as a vector</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>2</shape><string>⍳1</string></array><number>0</number>
<array><shape>46</shape><string>demote non-boolean representations to booleans</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>0∨BA</string></array><number>0</number>
<array><shape>42</shape><string>test if NA is within range ( NV[1],NV[2] )</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>19</shape><string>(NV[1]<NA)^NA<NV[2]</string></array><number>0</number>
<array><shape>42</shape><string>test if NA is within range [ NV[1],NV[2] ]</string></array>
<array><shape>5</shape><string>2=⍴NQ</string></array>
<array><shape>21</shape><string>(NV[1]≤NA)^(NA≤NV[2])</string></array><number>0</number>
<array><shape>26</shape><string>zeroing all boolean values</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>0^BA</string></array><number>0</number>
<array><shape>62</shape><string>selection of elements of NA1 and NA2 depending on condition BA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>16</shape><string>(NA1×BA)+NA2×~BA</string></array><number>0</number>
<array><shape>56</shape><string>changing an index origin dependent result to be as ⎕IO=1</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>(~⎕IO)+IA</string></array><number>0</number>
<array><shape>59</shape><string>conditional change of elements of NA to one according to BA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>NA*~BA</string></array><number>0</number>
<array><shape>15</shape><string>BA1 implies BA2</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>BA1≤BA2</string></array><number>0</number>
<array><shape>15</shape><string>BA1 but not BA2</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>BA1>BA2</string></array><number>0</number>
<array><shape>49</shape><string>avoiding division by zero error (gets value zero)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>21</shape><string>(0≠NA1)×NA2÷NA1+0=NA1</string></array><number>0</number>
<array><shape>12</shape><string>exclusive or</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>BA1≠BA2</string></array><number>0</number>
<array><shape>51</shape><string>replacing zeroes with corresponding elements of NA2</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>13</shape><string>NA1+NA2×NA1=0</string></array><number>0</number>
<array><shape>59</shape><string>kronecker delta of IA1 and IA2 (element of identity matrix)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>IA2=IA1</string></array><number>0</number>
<array><shape>51</shape><string>catenating IS elements XA after every element of XV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>17</shape><string>,XV,((⍴XV),IS)⍴XA</string></array><number>0</number>
<array><shape>52</shape><string>catenating IS elements XS before every element of XV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>19</shape><string>,(((⍴XV),IS)⍴XS),XV</string></array><number>0</number>
<array><shape>39</shape><string>merging vectors XV1 and XV2 alternately</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>16</shape><string>,XV2,[⎕IO+.5]XV1</string></array><number>0</number>
<array><shape>37</shape><string>inserting XS after each element of XV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>,XV,[1.1]XS</string></array><number>0</number>
<array><shape>16</shape><string>spacing out text</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>12</shape><string>,CV,[1.1]' '</string></array><number>0</number>
<array><shape>38</shape><string>reshaping NA into a matrix of width IS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>23</shape><string>(((⍴,NA),1)×IS*¯1 1)⍴NA</string></array><number>0</number>
<array><shape>43</shape><string>temporary ravel of XA1 for indexing with IA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>43</shape><string>A←⍴XA1 ⋄ XA1←,XA1 ⋄ XA1[IA]←XA2 ⋄ XA1←A⍴XA1</string></array><number>0</number>
<array><shape>43</shape><string>temporary ravel of XA1 for indexing with IA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>33</shape><string>A←,XA1 ⋄ A[IA]←XA2 ⋄ XA1←(⍴XA1)⍴A</string></array><number>0</number>
<array><shape>24</shape><string>first column as a matrix</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>XM[;,1]</string></array><number>0</number>
<array><shape>37</shape><string>number of elements (also of a scalar)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>⍴,XA</string></array><number>0</number>
<array><shape>32</shape><string>separating variable length lines</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>14</shape><string>XV1,⎕TC[2],XV2</string></array><number>0</number>
<array><shape>21</shape><string>IS×IS identity matrix</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>14</shape><string>(IS,IS)⍴1,IS⍴0</string></array><number>0</number>
<array><shape>37</shape><string>array and its negative ('plus minus')</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>15</shape><string>NA,[.5+⍴⍴NA]-NA</string></array><number>0</number>
<array><shape>20</shape><string>underlining a string</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>14</shape><string>CV,[⎕IO-.1]'¯'</string></array><number>0</number>
<array><shape>27</shape><string>forming a two-column matrix</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>12</shape><string>XV1,[1.1]XV2</string></array><number>0</number>
<array><shape>24</shape><string>forming a two-row matrix</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>XV1,[.1]XV2</string></array><number>0</number>
<array><shape>49</shape><string>selection of XS1 or XS2 depending on condition BS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>17</shape><string>(XS1,XS2)[⎕IO+BS]</string></array><number>0</number>
<array><shape>37</shape><string>increasing rank of XA2 to rank of XA1</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>30</shape><string>((((⍴⍴XA1)-⍴⍴XA2)⍴1),⍴XA2)⍴XA2</string></array><number>0</number>
<array><shape>37</shape><string>identity matrix of shape of matrix NM</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>12</shape><string>(⍴NM)⍴1,0×NM</string></array><number>0</number>
<array><shape>44</shape><string>reshaping vector XV into a two-column matrix</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>16</shape><string>((0.5×⍴XV),2)⍴XV</string></array><number>0</number>
<array><shape>41</shape><string>reshaping vector XV into a one-row matrix</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>10</shape><string>(1,⍴XV)⍴XV</string></array><number>0</number>
<array><shape>44</shape><string>reshaping vector XV into a one-column matrix</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>12</shape><string>((⍴XV),1)⍴XV</string></array><number>0</number>
<array><shape>48</shape><string>forming a IS-row matrix with all rows alike (XV)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>(IS,⍴XV)⍴XV</string></array><number>0</number>
<array><shape>41</shape><string>handling array XA temporarily as a vector</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>12</shape><string>(⍴XA)⍴ … ,XA</string></array><number>0</number>
<array><shape>17</shape><string>joining sentences</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>XV,0⍴XA</string></array><number>0</number>
<array><shape>60</shape><string>entering from terminal data exceeding input (printing) width</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>22</shape><string>NA←0 2 1 2 5 8 0 4 5,⎕</string></array><number>0</number>
<array><shape>48</shape><string>value of fixed-degree polynomial NV at points NA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>23</shape><string>NV[3]+NA×NV[2]+NA×NV[1]</string></array><number>0</number>
<array><shape>29</shape><string>number of columns in array XA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>(⍴XA)[⍴⍴XA]</string></array><number>0</number>
<array><shape>27</shape><string>number of rows in matrix XM</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>8</shape><string>(⍴XM)[1]</string></array><number>0</number>
<array><shape>30</shape><string>number of columns in matrix XM</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>8</shape><string>(⍴XM)[2]</string></array><number>0</number>
<array><shape>38</shape><string>conditional elementwise change of sign</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>15</shape><string>NA×(1 ¯1)[1+BA]</string></array><number>0</number>
<array><shape>35</shape><string>selection depending on index origin</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>XV[2×⎕IO]</string></array><number>0</number>
<array><shape>49</shape><string>indexing with boolean value BA (plotting a curve)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>12</shape><string>' *'[⎕IO+BA]</string></array><number>0</number>
<array><shape>36</shape><string>indexing independent of index origin</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>10</shape><string>XV[⎕IO+IA]</string></array><number>0</number>
<array><shape>35</shape><string>selection depending on index origin</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>XV[1]</string></array><number>0</number>
<array><shape>41</shape><string>zeroing a vector (without change of size)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>NV[]←0</string></array><number>0</number>
<array><shape>24</shape><string>first column as a vector</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>XM[;1]</string></array><number>0</number>
<array><shape>16</shape><string>rank of array XA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>⍴⍴XA</string></array><number>0</number>
<array><shape>30</shape><string>duplicating vector XV IS times</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>(IS×⍴XV)⍴XV</string></array><number>0</number>
<array><shape>27</shape><string>adding NV to each row of NA</string></array>
<array><shape>12</shape><string>(⍴NQ)=¯1↑⍴NA</string></array>
<array><shape>11</shape><string>NA+(⍴NA)⍴NV</string></array><number>0</number>
<array><shape>41</shape><string>array with shape of XA and XV as its rows</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>8</shape><string>(⍴XA)⍴XV</string></array><number>0</number>
<array><shape>27</shape><string>number of rows in matrix XM</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>3</shape><string>≢XM</string></array><number>0</number>
<array><shape>47</shape><string>forming an initially empty array to be expanded</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>0 80⍴0</string></array><number>0</number>
<array><shape>23</shape><string>output of an empty line</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>0⍴XA←</string></array><number>0</number>
<array><shape>43</shape><string>reshaping first element of XA into a scalar</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>⍬⍴XA</string></array><number>0</number>
<array><shape>37</shape><string>corner element of a (non-empty) array</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>1⍴XA</string></array><number>0</number>
<array><shape>18</shape><string>continued fraction</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>20</shape><string>1+÷2+÷3+÷4+÷5+÷6+÷ …</string></array><number>0</number>
<array><shape>39</shape><string>force 0÷0 into DOMAIN ERROR in division</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>8</shape><string>NA2×÷NA1</string></array><number>0</number>
<array><shape>38</shape><string>conditional elementwise change of sign</string></array>
<array><shape>10</shape><string>⍴NA ←→ ⍴BA</string></array>
<array><shape>8</shape><string>NA×¯1*BA</string></array><number>0</number>
<array><shape>34</shape><string>zero array of shape and size of NA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>0×NA</string></array><number>0</number>
<array><shape>58</shape><string>selecting elements satisfying condition BA, zeroing others</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>BA×NA</string></array><number>0</number>
<array><shape>38</shape><string>number and its negative ('plus minus')</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>1 ¯1×NS</string></array><number>0</number>
<array><shape>56</shape><string>changing an index origin dependent result to be as ⎕IO=0</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>-⎕IO-IA</string></array><number>0</number>
<array><shape>59</shape><string>changing an index origin dependent argument to act as ⎕IO=1</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>10</shape><string>(⎕IO-1)+IA</string></array><number>0</number>
<array><shape>24</shape><string>output of assigned value</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>⊢NA←</string></array><number>0</number>
<array><shape>59</shape><string>changing an index origin dependent argument to act as ⎕IO=0</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>⎕IO+IA</string></array><number>0</number>
<array><shape>57</shape><string>selecting elements satisfying condition BA, others to one</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>NA*BA</string></array><number>0</number>
<array><shape>31</shape><string>setting a constant with hyphens</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>⎕LX←⍞</string></array><number>0</number>
<array><shape>24</shape><string>output of assigned value</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>⎕←XA←</string></array><number>0</number>
<array><shape>30</shape><string>syntax error to stop execution</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>1</shape><string>∘</string></array><number>0</number>
<array><shape>15</shape><string>meaning of life</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>27</shape><string>⍎⊖⍕⊃⊂|⌊-*+○⌈×÷!⌽⍉⌹~⍴⍋⍒,⍟?⍳0</string></array><number>1</number>
<array><shape>36</shape><string>the rank of XA as a 1-element vector</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>⍴⍴XA</string></array><number>1</number>
<array><shape>26</shape><string>the rank of XA as a scalar</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>≢⍴XA</string></array><number>1</number>
<array><shape>46</shape><string>the subset of BV corresponding to the 1s in NS</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>NS/⍳BV</string></array><number>1</number>
<array><shape>49</shape><string>the positions in BV corresponding to the 1s in XV</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>XV/⍳⍴BV</string></array><number>1</number>
<array><shape>76</shape><string>the subset of XV in the index positions defined by NA (equivalent to XV[NA])</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>NA⊃¨⊂XV</string></array><number>1</number>
<array><shape>44</shape><string>XA1 and XA2 are ignored (no result produced)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>8</shape><string>XA1{}XA2</string></array><number>1</number>
<array><shape>20</shape><string>XA1 (XA2 is ignored)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>XA1{⍺}XA2</string></array><number>1</number>
<array><shape>20</shape><string>XA2 (XA1 is ignored)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>XA1{⍵}XA2</string></array><number>1</number>
<array><shape>42</shape><string>XA1 and XA2 as a two item vector (XA1 XA2)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>11</shape><string>XA1{⍺ ⍵}XA2</string></array><number>1</number>
<array><shape>20</shape><string>0 irrespective of XA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>{0}XA</string></array><number>1</number>
<array><shape>34</shape><string>0 corresponding to each item of XA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>{0}¨XA</string></array><number>1</number>
<array><shape>89</shape><string>the enclose of the items of PV (which must be of depth 2) catenated along their last axes</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>,/PV</string></array><number>1</number>
<array><shape>90</shape><string>the enclose of the items of PV (which must be of depth 2) catenated along their first axes</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>⍪/PV</string></array><number>1</number>
<array><shape>39</shape><string>the item in the top right of XA (⎕ML<2)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>⊃⌽XA</string></array><number>1</number>
<array><shape>39</shape><string>the item in the top right of XA (⎕ML≥2)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>↑⌽XA</string></array><number>1</number>
<array><shape>42</shape><string>the item in the bottom right of XA (⎕ML<2)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>⊃⌽,XA</string></array><number>1</number>
<array><shape>42</shape><string>the item in the bottom right of XA (⎕ML≥2)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>↑⌽,XA</string></array><number>1</number>
<array><shape>40</shape><string>1 if XV has a shape of zero, 0 otherwise</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>0=⍴XV</string></array><number>1</number>
<array><shape>48</shape><string>1 if XA has a rank of zero (scalar), 0 otherwise</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>0=⍴⍴XA</string></array><number>1</number>
<array><shape>56</shape><string>1 if XA has a depth of zero (simple scalar), 0 otherwise</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>0=≡XA</string></array><number>1</number>
<array><shape>150</shape><string>a simple vector comprising as many items as there are rows in XM2, where each item is the number of the first row in XM1 that matches each row in XM2.</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>15</shape><string>XM1{(↓⍺)⍳↓⍵}XM2</string></array><number>1</number>
<array><shape>236</shape><string>a nested vector comprising vectors that each correspond to a position in the original vectors of PV – the first vector contains the first item from each vector in PV, padded to be the same length as the largest vector, and so on (⎕ML<2)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>↓⍉↑PV</string></array><number>1</number>
<array><shape>236</shape><string>a nested vector comprising vectors that each correspond to a position in the original vectors of PV – the first vector contains the first item from each vector in PV, padded to be the same length as the largest vector, and so on (⎕ML≥2)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>↓⍉⊃PV</string></array><number>1</number>
<array><shape>68</shape><string>a Boolean mask indicating the leading blank spaces in each row of CA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>8</shape><string>^\' '=CA</string></array><number>1</number>
<array><shape>52</shape><string>the number of leading blank spaces in each row of CA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>10</shape><string>+/^\' '=CA</string></array><number>1</number>
<array><shape>42</shape><string>the number of leading 1s in each row of BA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>+/^\BA</string></array><number>1</number>
<array><shape>35</shape><string>CV without any leading blank spaces</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>15</shape><string>{(∨\' '≠⍵)/⍵}CV</string></array><number>1</number>
<array><shape>35</shape><string>CV without any leading blank spaces</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>17</shape><string>{(+/^\' '=⍵)↓⍵}CV</string></array><number>1</number>
<array><shape>140</shape><string>a nested vector comprising simple character vectors constructed from the rows of CA (which must be of depth 1) with all blank spaces removed</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>~∘' '¨↓CA</string></array><number>1</number>
<array><shape>145</shape><string>a nested vector comprising simple character vectors constructed from the rows of CA (which must be of depth 1) with trailing blank spaces removed</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>20</shape><string>{(+/∨\' '≠⌽⍵)↑¨↓⍵}CA</string></array><number>1</number>
<array><shape>55</shape><string>the length of the first axis of each item in XA (⎕ML<2)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>⊃∘⍴¨XA</string></array><number>1</number>
<array><shape>55</shape><string>the length of the first axis of each item in XA (⎕ML≥2)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>↑∘⍴¨XA</string></array><number>1</number>
<array><shape>62</shape><string>XA1 redefined to be XA1 with XA2 catenated along its last axis</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>8</shape><string>XA1,←XA2</string></array><number>1</number>
<array><shape>63</shape><string>XA1 redefined to be XA1 with XA2 catenated along its first axis</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>8</shape><string>XA1⍪←XA2</string></array><number>1</number>
<array><shape>46</shape><string>XV sorted into numerical or alphabetical order</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>{⍵[⍋⍵]}XV</string></array><number>1</number>
<array><shape>54</shape><string>XV sorted into reverse numerical or alphabetical order</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>9</shape><string>{⍵[⍒⍵]}XV</string></array><number>1</number>
<array><shape>60</shape><string>XM with the rows sorted into numerical or alphabetical order</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>10</shape><string>{⍵[⍋⍵;]}XM</string></array><number>1</number>
<array><shape>68</shape><string>XM with the rows sorted into reverse numerical or alphabetical order</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>10</shape><string>{⍵[⍒⍵;]}XM</string></array><number>1</number>
<array><shape>52</shape><string>1 if XA has a depth of 1 (simple array), 0 otherwise</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>1=≡XA </string></array><number>1</number>
<array><shape>72</shape><string>1 if XA has a depth of 0 or 1 (simple scalar, vector, etc.), 0 otherwise</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>1=≡,XA </string></array><number>1</number>
<array><shape>29</shape><string>1 if XA is empty, 0 otherwise</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>0∊⍴XA </string></array><number>1</number>
<array><shape>33</shape><string>1 if XA is not empty, 0 otherwise</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>~0∊⍴XA </string></array><number>1</number>
<array><shape>46</shape><string>the first sub-array along the first axis of XA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>⊣⌿XA </string></array><number>1</number>
<array><shape>45</shape><string>the first sub-array along the last axis of XA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>⊣/XA </string></array><number>1</number>
<array><shape>45</shape><string>the last sub-array along the first axis of XA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>⊢⌿XA </string></array><number>1</number>
<array><shape>44</shape><string>the last sub-array along the last axis of XA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>5</shape><string>⊢/XA </string></array><number>1</number>
<array><shape>55</shape><string>euler's idiom (accurate when NA is a multiple of 0J0.5)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>4</shape><string>*○NA</string></array><number>1</number>
<array><shape>57</shape><string>1 if XA has an empty first dimension, 0 otherwise (⎕ML<2)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>0=⊃⍴XA</string></array><number>1</number>
<array><shape>67</shape><string>1 if XA does not have an empty first dimension, 0 otherwise (⎕ML<2)</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>0≠⊃⍴XA</string></array><number>1</number>
<array><shape>103</shape><string>classic version only: The character numbers (atomic vector index) corresponding to the characters in CA</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>6</shape><string>⎕AV⍳CA</string></array><number>1</number>
<array><shape>24</shape><string>round to nearest integer</string></array>
<array><shape>0</shape><string></string></array>
<array><shape>7</shape><string>⌊0.5+NA</string></array></array>