Promote is a monadic function that adds a length1 axis to its argument before the other axes, resulting in an array with rank one higher. It appears as a primitive in Kap (<
, "increase rank") and Dyalog APL Vision (∧
), as well as J (,:
, "Itemize"), BQN (≍
, "Solo"), and Uiua (¤
, "Fix"). In J and BQN it's paired with the related dyadic primitive Laminate. The K primitive Enlist (,
), which creates a length1 list containing its argument, can also be interpreted as Promote because depth and rank are equivalent in the list model of arrays.
For an argument A
, promote can be implemented with Ravel with axis as ,[⎕IO0.5] A
, with Reshape as (1,⍴A) ⍴ A
, or with Outer Product as (⍳1) ∘.⊢ A
. The choice to add an axis at the beginning is based on leading axis theory, as this allows the axis to be placed in any other position using the Rank operator.
Documentation
APL builtins [edit]

Primitives (Timeline) 
Functions

Scalar

Monadic

Conjugate ∙ Negate ∙ Signum ∙ Reciprocal ∙ Magnitude ∙ Exponential ∙ Natural Logarithm ∙ Floor ∙ Ceiling ∙ Factorial ∙ Not ∙ Pi Times ∙ Roll ∙ Type ∙ Imaginary ∙ Square Root ∙ Round

Dyadic

Add ∙ Subtract ∙ Times ∙ Divide ∙ Residue ∙ Power ∙ Logarithm ∙ Minimum ∙ Maximum ∙ Binomial ∙ Comparison functions ∙ Boolean functions (And, Or, Nand, Nor) ∙ GCD ∙ LCM ∙ Circular ∙ Complex ∙ Root

NonScalar

Structural

Shape ∙ Reshape ∙ Tally ∙ Depth ∙ Ravel ∙ Enlist ∙ Table ∙ Catenate ∙ Reverse ∙ Rotate ∙ Transpose ∙ Raze ∙ Mix ∙ Split ∙ Enclose ∙ Nest ∙ Cut (K) ∙ Pair ∙ Link ∙ Partitioned Enclose ∙ Partition

Selection

First ∙ Pick ∙ Take ∙ Drop ∙ Unique ∙ Identity ∙ Stop ∙ Select ∙ Replicate ∙ Expand ∙ Set functions (Intersection ∙ Union ∙ Without) ∙ Bracket indexing ∙ Index ∙ Cartesian Product ∙ Sort

Selector

Index generator ∙ Grade ∙ Index Of ∙ Interval Index ∙ Indices ∙ Deal ∙ Prefix and suffix vectors

Computational

Match ∙ Not Match ∙ Membership ∙ Find ∙ Nub Sieve ∙ Encode ∙ Decode ∙ Matrix Inverse ∙ Matrix Divide ∙ Format ∙ Execute ∙ Materialise ∙ Range

Operators 
Monadic

Each ∙ Commute ∙ Constant ∙ Replicate ∙ Expand ∙ Reduce ∙ Windowed Reduce ∙ Scan ∙ Outer Product ∙ Key ∙ IBeam ∙ Spawn ∙ Function axis ∙ Identity (Null, Ident)

Dyadic

Bind ∙ Compositions (Compose, Reverse Compose, Beside, Withe, Atop, Over) ∙ Inner Product ∙ Determinant ∙ Power ∙ At ∙ Under ∙ Rank ∙ Depth ∙ Variant ∙ Stencil ∙ Cut ∙ Direct definition (operator) ∙ Identity (Lev, Dex)

Quad names

Index origin ∙ Comparison tolerance ∙ Migration level ∙ Atomic vector
