X-Git-Url: http://git.shiar.nl/sheet.git/blobdiff_plain/4573100ac0fbb9ba52dc3f48383de3fc5a960e6f..2a99bcdadec88d7483903e2c8420ad3e78fcb805:/apl.inc.pl diff --git a/apl.inc.pl b/apl.inc.pl index 16f098f..3559372 100644 --- a/apl.inc.pl +++ b/apl.inc.pl @@ -15,6 +15,8 @@ use utf8; ["!", "binomial\nNumber of combinations of B taken A at a time", "factorial\nProduct of integers 1 to B"], ["?\nq", "deal\nA distinct integers selected randomly from the first B integers", "roll\nOne integer selected randomly from the first B integers"], +undef, + # logical ["∼\nt", "difference\nItems found in B are removed from A", "not\nLogical: ∼1 is 0, ∼0 is 1"], ["∨\n9", "or\nLogic: 0 if A and B are 0; 1 otherwise"], @@ -32,6 +34,9 @@ use utf8; ["≡\n:", "match\n1 if arguments are the same in every respect, 0 if not", "depth\nLevel of nesting: 1 + maximum array depth or 0 if scalar"], ["≢\n\"", "not match\n1 if arguments are different if any respect, 0 if not", "tally\nNumber of major cells in B, equivalent to {⍬⍴ (⍴⍵),1}"], +undef, + +# vector ["∈\ne", "membership\n1 for elements of A present in B; 0 where not", "enlist\nEvery element in B as simple vector"], ["⍷\nE", "find\nElements of A within B, returning 1 if the start of A is found in B"], ["⌷\nL", "index", "materialise"], @@ -46,6 +51,8 @@ use utf8; ["⋄\n`", "statement separator\nSeparates multiple statements on a single line"], ["↑\ny", "take\nSelect the first (or last) A elements of B according to ×A", "nub"], ["↓\nu", "drop\nRemove the first (or last) A elements of B according to ×A", "split"], + +# set ["⊂\nz", "partition\nDivide B into an array of vectors according to specification in A", "enclose\nProduce a scalar of vector B"], ["⊃\nx", "pick\nSelect item A from vector B", "disclose\nProduce an array made up of the items in B"], ["⊆", "subset\nElements in both A and B: (∧/A∈B)∧(∧/B∈A)"], @@ -54,11 +61,14 @@ use utf8; [",", "catenate\nElements of B appended to the elements of A", "ravel\nReshapes B into a vector"], ["⍪\n<", "catenate first\nCatenate across the first axis"], +# transform ["⌹\n+", "matrix divide\nSolution to system of linear equations, multiple regression Ax = B", "matrix inverse\nInverse of matrix B"], ["⌽\n%", "rotate first\nThe elements of B are rotated A positions", "reverse first\nReverse elements of B along last axis"], ["⊖\n&", "rotate\nThe elements of B are rotated A positions along the first axis", "reverse\nReverse elements of B along first axis"], ["⍉\n^", "general transpose\nThe axes of B are ordered by A", "monadic transpose\nReverse the axes of B"], +undef, + # sorting and coding ["⍋\n\$", "grade up\nArrange B according to collating sequence specified by A", "grade up\nIndices of B which will arrange B in ascending order"], ["⍒\n#", "grade down\nArrange B according to inverse collating sequence specified by A", "grade down\nIndices of B which will arrange B in descending order"], @@ -83,6 +93,8 @@ use utf8; ["'\nk"], ["⍙\n>"], +undef, + # operators ["\\","expand\nInsert zeros (or blanks) in B corresponding to zeros in A", "scan\nRunning sum across B"], ["⍀\n.", "expand first", "scan first\nRunning sum down B"],