Channels and containers provide a powerful way to pass data between programs. The following topics contain some examples of how channels can be used.
The following figure shows the simplest scenario—a ""standalone"" program with a single channel with which it can be invoked.