Data Types

elements

Supported By

Descriptors

Description

The elements data type is a chunk type of list that represents a sublist of that list. Every single value, piece of data, list, or object is considered an elements similarly to how it is considered a list.

Notes

In order to use lists properly, you must declare your variables to be a kind of list. If a list is put into a variable that is undeclared, or declared to be a type other than a kind of list, the list will be converted to a single string. For example:

put (1,2,3,4) into steve
put the number of elements in steve

will print 1 because steve has only one element: the string "1,2,3,4". However, this example:

local steve as numbers
put (1,2,3,4) into steve
put the number of elements in steve

will print 4 because steve has four elements: the numbers 1, 2, 3, and 4.

There is a subtle difference between an index, ordinal, or name descriptor and an index range, ordinal range, or mass descriptor for elements. An index, ordinal, or name descriptor evaluates to an item in the list, while an index range, ordinal range, or mass descriptor evaluates to a sublist. Consider the following:

local myList as list
put (1,2,(3,4),5) into myList
put the number of elements in element 3 of myList
put the number of elements in element 3 to 3 of myList

The first line of output will be 2, since element 3 of myList is a list containing two values, 3 and 4. However, the second line of output will be 1, since element 3 to 3 of myList is a list containing that list.

Compatibility

The element and elements data types were broken in OpenXION 1.0 and 1.1, and evaluated index, ordinal, and name descriptors as sublists rather than list items. This was fixed in OpenXION 1.2.