You can have any type you want, as long as it's a string. :-)
Don't forget about https://core.tcl-lang.org/expect/index. Comes in very handy sometimes.
Ruby https://github.com/ytti/oxidized/blob/master/lib/oxidized/mo... or TextFSM https://github.com/google/textfsm
are much better options if you need to do a /lot/ of parsing
https://wiki.tcl-lang.org/page/everything+is+a+string
Yes, there is some detail about internal dual representation.
Maybe, but it's clearly been updated after Tcl 8. And while the page itself isn't calling it something that hampers tcl, it does cover that it's somewhat unusual, that is has implications, and so on.
It works well as long as your goal isn't to totally eliminate boxing of values.