::tcl::unsupported is a namespace that contains bits and pieces of Tcl that are experimental, not intended for production code, perhaps useful for debugging and introspecting Tcl, and liable to change or removal without warning.

Additions in Tcl 8.5

disassemble bytecode

Additions in 8.6 beta versions

moved into the global namespace in version 8.6
removed in version 8.6 after yieldto was modified such that it became trivial to implement in terms of it.

Additions in Tcl 8.6

Assembles TAL into bytecode and executes it
introduce a command into a coroutine
display the representation of a Tcl_Obj for debugging purposes. Do not base the behavior of any command on the results of this one; it does not conform to Tcl's value semantics!

Additions in Tcl 8.6.3

Script-readable version of disassemble.


AMG: If memory serves, once upon a time Tcl had commands called unsupported0, unsupported1, unsupported2, etc. Once they were finalized, they were renamed. For example, I'm pretty sure fcopy used to be known as unsupported0.

I greatly prefer the namespace approach to segregating the unsupported commands.

DKF: Yes, but when unsupported0 was introduced, we didn't have namespaces; I'm pretty sure it came in with the http package, which predated 8.0…