Ravel order

From APL Wiki
Jump to navigation Jump to search

In the APL array model, ravel order is the ordering of elements in the ravel of an array. When an array is displayed, this corresponds to the reading order for English: left to right, then top to bottom. In APL implementations, elements of an array are universally stored in ravel order.

The ravel order defines, or is defined by, a hierarchy of axes with one direction called leading and the other trailing. By convention, the leading axes are those with lower indices while trailing axes have higher indices. This convention causes the ravel order of array indices to be the same as their lexicographical order. For this reason, ravel order is sometimes called "index order".

The ravel order is also used to reshape an array.

External links

APL features [edit]
Built-ins Primitives (functions, operators) ∙ Quad name
Array model ShapeRankDepthBoundIndex (Indexing) ∙ AxisRavelRavel orderElementScalarVectorMatrixSimple scalarSimple arrayNested arrayCellMajor cellSubarrayEmpty arrayPrototype
Data types Number (Boolean, Complex number) ∙ Character (String) ∙ BoxNamespaceFunction array
Concepts and paradigms Conformability (Scalar extension, Leading axis agreement) ∙ Scalar function (Pervasion) ∙ Identity elementComplex floorTotal array orderingTacit programming (Function composition, Close composition) ∙ Glyph