[AMG]: In Tcl, each value's data type is implicitly determined by the operations performed on the value. This is called "duck typing" [http://en.wikipedia.org/wiki/Duck_typing]. === set data {1 2 3 4} ;# $data is a [string] llength $data ;# $data is a [list] dict size $data ;# $data is a [dict] set data 42 ;# $data is a string expr $data ;# $data is an [expr]ession expr {$data} ;# $data is an [integer] regexp $data 4242 ;# $data is a [regexp] set data [expr 99] ;# $data is an integer string length $data ;# $data is a string === and so on. Beware of [shimmering]! <> Concept