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.
|APL features |
|Built-ins||Primitives (functions, operators) ∙ Quad name|
|Array model||Shape ∙ Rank ∙ Depth ∙ Bound ∙ Index (Indexing) ∙ Axis ∙ Ravel ∙ Ravel order ∙ Element ∙ Scalar ∙ Vector ∙ Matrix ∙ Simple scalar ∙ Simple array ∙ Nested array ∙ Cell ∙ Major cell ∙ Subarray ∙ Empty array ∙ Prototype|
|Data types||Number (Boolean, Complex number) ∙ Character (String) ∙ Box ∙ Namespace|
|Concepts and paradigms||Conformability (Scalar extension, Leading axis agreement) ∙ Scalar function (Pervasion) ∙ Identity element ∙ Complex floor ∙ Total array ordering ∙ Tacit programming (Function composition, Close composition) ∙ Glyph|
|Errors||LIMIT ERROR ∙ RANK ERROR ∙ SYNTAX ERROR ∙ DOMAIN ERROR ∙ LENGTH ERROR ∙ INDEX ERROR ∙ VALUE ERROR|