http://www.purl.org/tcl/home/man/tcl8.4/TclCmd/join.htm
Join converts a Tcl list into a string. It glues together the elements of a list using a supplied character as element separator. Default is a space.
In the sentence above: character or string?
RS A typical application is to process a text that consists of several lines:
foreach line [split $input \n] { # do something with line, produce output lappend outlines $out } set result [join $outlines \n]
Another is to flatten out one level of embedded lists:
% join {1 {2 {3 4}} 5} 1 2 {3 4} 5
Matrixes are a frequent application for nested lists. Here's a simple matrix summer that uses join twice: once for concatenating the rows; then for putting + signs in between so expr has something to parse:
proc matsum matrix {expr [join [join $matrix] +]}
Tcl syntax help - Arts and crafts of Tcl-Tk programming - Category Command