A channel is the Tcl I/O model for character streams.
[why are channels important to the tcl programmer?]
[how are channels different from other constructs in tcl?]
[how do I create/use/destroy a channel?]
PYK 2014-05-17: Tcl's channel mechanism currently only supports one type of atom: the byte. Could it be generalized to support arbitrary atom types? This could be put to use anywhere messages a passed, from flow-based programming to (gasp) UDP implementations. Hypothetical usage:
set chan [open {some resource descriptor}] chan configure $chan -atom rfc2822 set msg [read $chan] $msg headers
Yes, read would in this case construct new commands -- groovy eh?