manual:chapter3:lists

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
manual:chapter3:lists [2021/08/15 13:58]
claudio [Operating with Lists]
manual:chapter3:lists [2021/08/15 14:50]
claudio [Operating with Lists]
Line 10: Line 10:
 For example, lists can be used to quickly apply the same operation to more than one value: For example, lists can be used to quickly apply the same operation to more than one value:
  
 +<code>
 +2:                     { 1 2 3 }
 +1:                             1
 +……………………………………………………………………………………
 ++
 +</code>
 +will result in adding ''1'' to each element on the list: ''{ 2 3 4 }''.
  
 +There's operations that are exclusive to lists, for example the command ''ADD'' will concatenate two lists, or append 1 element at the end of the list.
 +
 +<code>
 +2:                     { 1 2 3 }
 +1:                             1
 +……………………………………………………………………………………
 +ADD
 +</code>
 +will result in ''{ 1 2 3 1 }'' and
 +<code>
 +2:                     { 1 2 3 }
 +1:                     { 4 5 6 }
 +……………………………………………………………………………………
 +ADD
 +</code>
 +will result in ''{ 1 2 3 4 5 6 }''
 +
 +Other common commands that operate on lists are:
 +
 +  * ''→LIST'': Creates a list from loose objects in the stack
 +  * ''LIST→'': Split a list into individual objects in the stack
 +  * ''SORT'': Sort the elements of a list
 +  * ''REVLIST'': Reverses the order of a list
 +
 +
 +==== Elements within a List ====
 +
 +Elements in a list can be referred to by a numeric index. The index starts at ''1'' for the first element of the list. To get an element from a list, the ''GET'' command is used:
 +<code>
 +2:                  { 11 12 13 }
 +1:                             2
 +……………………………………………………………………………………
 +GET
 +</code>
 +will result in ''12''.
 +
 +Replacing an element is done via the ''PUT'' command:
 +
 +<code>
 +3:                  { 11 12 13 }
 +2:                             2
 +1:                             3
 +……………………………………………………………………………………
 +PUT
 +</code>
 +will result in ''{ 11 3 13 }'' because the object ''3'' replaced the object at index ''2''
 +
 +Elements of a list can also be accessed from within algebraic expression (read-only) by giving the list a name (store the list in a variable using ''STO'' or ''LSTO'') and then including the index in parenthesis, much like a mathematical function.
 +For example, assuming the list ''{ 11 12 13 }'' was stored in variable ''L'', evaluating '''L(2)''' will result in ''12'' as expected.
 +==== Procedures with Lists ====
  • manual/chapter3/lists.txt
  • Last modified: 2021/08/15 14:51
  • by claudio