Ravel order: Difference between revisions

From APL Wiki
Jump to navigation Jump to search
Miraheze>Adám Brudzewsky
m (Text replacement - "{{APL programming language}}" to "{{APL features}}")
m (3 revisions imported: Migrate from miraheze)
(No difference)

Revision as of 14:49, 20 November 2019

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 floorArray ordering (Total) ∙ Tacit programming (Function composition, Close composition) ∙ GlyphLeading axis theoryMajor cell searchFirst-class function
Errors LIMIT ERRORRANK ERRORSYNTAX ERRORDOMAIN ERRORLENGTH ERRORINDEX ERRORVALUE ERROREVOLUTION ERROR