I've recently spent some time experimenting with Tcl, and I've developed some affection for it, but what tripped me up is that "everything is a string" means that Tcl is one of the few truly weakly typed languages. This Tcl notation:
{a b}
might represent any of the following data structures in JSON notation: "a b"
["a", "b"]
[["a"], ["b"]]
{"a": "b"}
{"a": ["b"]}
This can make reading some Tcl code quite a puzzle.