Each: Difference between revisions

From APL Wiki
Jump to navigation Jump to search
Miraheze>Marshall
No edit summary
Miraheze>Adám Brudzewsky
No edit summary
Line 1: Line 1:
The Each operator (<code>¨</code>) is a [[monadic operator]] which applies its [[operand]] to each [[element]] of the [[arguments]], and returns an array whose elements are the results. If two arguments are given, their elements are matched using [[conformability]] rules.
{{Primitive|¨|Each}} is a primitive [[monadic operator]] which applies its [[operand]] to each [[element]] of the [[arguments]], and returns an array whose elements are the results. If two arguments are given, their elements are matched using [[conformability]] rules.


Each is defined only in [[Nested array model|nested]] APLs. Some [[Flat array model|flat]] APLs obtain analogous functionality by using an [[Under]] operator with [[close composition]] along with the [[Function rank|rank]]-0 function [[Disclose]] (or Unbox). In [[SHARP APL]] this is written <code>f¨></code>. In [[J]] it is <code>f&.></code>.
Each is defined only in [[Nested array model|nested]] APLs. Some [[Flat array model|flat]] APLs obtain analogous functionality by using an [[Under]] operator with [[close composition]] along with the [[Function rank|rank]]-0 function [[Disclose]] (or Unbox). In [[SHARP APL]] this is written <code>f¨></code>. In [[J]] it is <code>f&.></code>.


Each differs from the [[Rank operator]] with rank 0 in that the operand arguments and results are not enclosed. As the [[elements]] of a nested array they need not be [[scalar]].
Each differs from the [[Rank operator]] with rank 0 in that the operand arguments and results are not enclosed. As the [[elements]] of a nested array they need not be [[scalar]].
{{APL built-ins}}

Revision as of 11:43, 25 October 2019

Template:Primitive is a primitive monadic operator which applies its operand to each element of the arguments, and returns an array whose elements are the results. If two arguments are given, their elements are matched using conformability rules.

Each is defined only in nested APLs. Some flat APLs obtain analogous functionality by using an Under operator with close composition along with the rank-0 function Disclose (or Unbox). In SHARP APL this is written f¨>. In J it is f&.>.

Each differs from the Rank operator with rank 0 in that the operand arguments and results are not enclosed. As the elements of a nested array they need not be scalar.

APL built-ins [edit]
Primitives (Timeline) Functions
Scalar
Monadic ConjugateNegateSignumReciprocalMagnitudeExponentialNatural LogarithmFloorCeilingFactorialNotPi TimesRollTypeImaginarySquare RootRound
Dyadic AddSubtractTimesDivideResiduePowerLogarithmMinimumMaximumBinomialComparison functionsBoolean functions (And, Or, Nand, Nor) ∙ GCDLCMCircularComplexRoot
Non-Scalar
Structural ShapeReshapeTallyDepthRavelEnlistTableCatenateReverseRotateTransposeRazeMixSplitEncloseNestCut (K)PairLinkPartitioned EnclosePartition
Selection FirstPickTakeDropUniqueIdentityStopSelectReplicateExpandSet functions (IntersectionUnionWithout) ∙ Bracket indexingIndexCartesian ProductSort
Selector Index generatorGradeIndex OfInterval IndexIndicesDealPrefix and suffix vectors
Computational MatchNot MatchMembershipFindNub SieveEncodeDecodeMatrix InverseMatrix DivideFormatExecuteMaterialiseRange
Operators Monadic EachCommuteConstantReplicateExpandReduceWindowed ReduceScanOuter ProductKeyI-BeamSpawnFunction axisIdentity (Null, Ident)
Dyadic BindCompositions (Compose, Reverse Compose, Beside, Withe, Atop, Over) ∙ Inner ProductDeterminantPowerAtUnderRankDepthVariantStencilCutDirect definition (operator)Identity (Lev, Dex)
Quad names Index originComparison toleranceMigration levelAtomic vector