Template talk:APL built-ins: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
|||
Line 26: | Line 26: | ||
* evaluative, display, and control functions: Execute, Execute in Context, Protected Execute, Value, Value in Context, Result, Signal, Print, Stop; Time.}} | * evaluative, display, and control functions: Execute, Execute in Context, Protected Execute, Value, Value in Context, Result, Signal, Print, Stop; Time.}} | ||
=== [[User:Bubbler|Bubbler]] ([[User talk:Bubbler|talk]]) 07:59, 22 June 2020 (UTC) === | |||
Given the flood of primitives, I think we might need a multi-level categorization. Here is a very rough (and kind-of arbitrary) draft for non-scalar functions (IMO, such an organization is also needed for scalar ones). - | Given the flood of primitives, I think we might need a multi-level categorization. Here is a very rough (and kind-of arbitrary) draft for non-scalar functions (IMO, such an organization is also needed for scalar ones). | ||
==== Non-scalar functions ==== | |||
* Identity | * Identity | ||
Line 51: | Line 53: | ||
** Miscellaneous: Materialise | ** Miscellaneous: Materialise | ||
==== Scalar functions ==== | |||
=== Scalar functions === | |||
* Arithmetic | * Arithmetic | ||
Line 65: | Line 65: | ||
* Miscellaneous: Type | * Miscellaneous: Type | ||
=== Operators === | ==== Operators ==== | ||
* Spread: Each, Rank, Depth | * Spread: Each, Rank, Depth | ||
Line 74: | Line 74: | ||
* Functional: Commute, Constant, Bind, Compositions, Under | * Functional: Commute, Constant, Bind, Compositions, Under | ||
* Other: Power, Key, At, Stencil, Spawn, I-beam | * Other: Power, Key, At, Stencil, Spawn, I-beam | ||
=== [[User:Adám Brudzewsky|Adám Brudzewsky]] ([[User talk:Adám Brudzewsky|talk]]) 06:33, 30 June 2020 (UTC) === | |||
==== Non-scalar functions ==== | |||
* Structural | |||
** Array properties: Shape, Tally, Depth | |||
** Flat transform: Reshape, Ravel, Table, Catenate, Reverse, Rotate, Transpose | |||
** Nested transform: First, Enclose, Nest, Mix, Split, Enlist, Partitioned Enclose, Partition, Pair, Link | |||
* Selective | |||
** No-op: Identity, Materialise | |||
** Indexing: Bracket, Pick, Index, Select | |||
** Affix: Take, Drop | |||
** Mask: Replicate, Expand | |||
** Set: Unique, Intersection, Union, Without | |||
* Computational | |||
** Generation: Integers, Deal | |||
** Equality: Match, Not Match, Membership, Index Of, Find, Nub Sieve | |||
** Ordering: Grade, Interval Index | |||
** Matrix: Inverse, Divide | |||
** Base conversion: Encode, Decode | |||
** Text: Format, Execute | |||
==== Scalar functions ==== | |||
* Basic arithmetic: Negate, Reciprocal, Add, Subtract, Times, Divide | |||
* Advanced mathematics: Exponential, Power, Natural Logarithm, Logarithm, Square Root, Root | |||
* Comparison: Minimum, Maximum, Comparison functions | |||
* Boolean: Not, And, Or, Nand, Nor | |||
* Number theory: Residue, Floor, Ceiling, GCD, LCM | |||
* Combinatorics: Roll, Factorial, Binomial | |||
* Complex and trigonometry: Conjugate, Imaginary, Complex, Pi Times, Circular | |||
* Properties: Magnitude, Sign, Type | |||
==== Operators ==== | |||
* Spread: Each, Rank, Depth | |||
* Product: Inner Product, Outer Product | |||
* Mask: Replicate, Expand | |||
* Reduction: Reduce, Windowed Reduce, Scan | |||
* Modification: Axis, Variant, Spawn | |||
* Functional: Commute, Constant, Bind, Compositions, Power, Under | |||
* Selective application: At, Stencil, Key |