2,954
edits
(Redirected page to Array model) Tag: New redirect |
(Removed redirect to Array model) Tag: Removed redirect |
||
Line 1: | Line 1: | ||
:''This page is about the role of arrays in APL syntax. For a description of arrays as a data structure, see [[Array model]].'' | |||
In [[APL syntax]], an '''array''' (or '''noun''', in [[A Dictionary of APL]] and [[J]]) is a first-class entity in the language that can be passed as an [[argument]] to a [[function]] or an [[operand]] to an [[operator]]. The distinguishing feature of an array programming language is that all first-class values fit into the [[array model]] and thus can be called "arrays". Other language families might use the term "value" for such a concept, but in array programming "value" more commonly means anything that can be given a name (by [[assignment]] or [[defined function|function definition]]), which would also include functions and operators. | |||
The term "array" might also refer to the subset of syntactic arrays that can be formed from [[character]]s, [[number]]s, and [[Enclose|enclosure]]. In a few languages, like [[J]], these arrays are the only kind possible, but other languages might allow [[namespace]]s, [[object]]s, or [[function]]s to be placed inside arrays. The term [[total array ordering]] as used in [[Dyalog APL]] uses this more limited meaning. Arrays that fit this more limited definition have neater theoretical properties: they are immutable and can't form circular references (unlike namespaces), and it is easy to determine whether two different representations, perhaps with different [[internal type]]s, refer to the same array (unlike functions, unless considered symbolically). | |||
{{APL syntax}}[[Category:Arrays| ]][[Category:APL syntax]] |