# Ravel order

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

- Arrays have elements, Indices and Encoding (part of APL a Day)

APL features [edit]
| |
---|---|

Built-ins | Primitive function ∙ Primitive operator ∙ 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 | Leading axis theory ∙ Scalar extension ∙ Conformability ∙ Scalar function ∙ Pervasion ∙ Glyph ∙ Identity element ∙ Complex floor ∙ Total array ordering |

Errors | LIMIT ERROR ∙ RANK ERROR ∙ SYNTAX ERROR ∙ DOMAIN ERROR ∙ LENGTH ERROR ∙ INDEX ERROR ∙ VALUE ERROR |