12.5.22    lappend

Description:   Append list elements onto a variable

Syntax:         lappend varName ?value value value ...?


Argument:     variable name, a list of values

Returns:        text string with a list of values, with spaces between elements

See Also:       foreach, append, concat, list, llength, lindex



set x {}

foreach {i j} {a b c d e f} {

lappend x $j $i


SETVAL text1=$x

# The value of x and tag text1 is "b a d c f e"


This command treats the variable given by varName as a list and appends each of the value arguments to that list as a separate element, with spaces between elements. If varName doesn’t exist, it is created as a list with elements given by the value arguments. Lappend is similar to append except that the values are appended as list elements rather than raw text. This command provides a relatively efficient way to build up large lists. For example,  ‘‘lappend a $b’’  is much more efficient than
 ‘‘set a [concat $a [list $b]]’’

if $a contains a long list.